Project

General

Profile

Bug #5115

Decide and implement PSTimer optimization

Added by Ovidiu Maxiniuc about 3 years ago. Updated about 3 years ago.

Status:
New
Priority:
Normal
Assignee:
-
Target version:
-
Start date:
Due date:
% Done:

0%

billable:
No
vendor_id:
GCD
case_num:

History

#3 Updated by Ovidiu Maxiniuc about 3 years ago

In #5037-30 there is a thread dump which shows 7 PSTimer threads but only 1 interactive FWD client. Evidently each PSTimer has its own time management thread. This is not optimal because it consumes more resources than needed. There are two better approaches:
  • have a single thread to drive all PSTimer objects from all users.
    This is the most resource efficient: just one thread. However, it has the disadvantage of a bit more complex implementation and if a message is delayed by processing of an used, it possibly affect others, if time intervals are really short.
  • one thread for each user.
    This will give us a more flexibility and stability: we can stop the thread when the client disconnects and we are sure the events are timely delivered to each client.

We need to compare and decide the best approach and replace the initial solution.

#4 Updated by Greg Shah about 3 years ago

  • Project changed from Core Development to User Interface

Also available in: Atom PDF