felix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Carsten Ziegeler (JIRA)" <j...@apache.org>
Subject [jira] Commented: (FELIX-1913) All synchronous events are processed in one queue
Date Thu, 03 Dec 2009 10:10:21 GMT

    [ https://issues.apache.org/jira/browse/FELIX-1913?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12785247#action_12785247
] 

Carsten Ziegeler commented on FELIX-1913:
-----------------------------------------

I'Ve attached a prototype for an improvement - it is clearly not the final solution.
I've changed the thread pool to work with plain Runnable's
and then just changed the execute method of the sync handler: the event handlers are processed
one after the other.
If no timeout is set, the handlers are called directly
If a timeout is set, the handlers are called by a thread from the thread pool and blacklisting
is also handled.
This allows to process events in parallel when they come from different threads.

I did some basic tests and it seems to work (incl. blacklisting etc.)



> All synchronous events are processed in one queue
> -------------------------------------------------
>
>                 Key: FELIX-1913
>                 URL: https://issues.apache.org/jira/browse/FELIX-1913
>             Project: Felix
>          Issue Type: Improvement
>          Components: Event Admin
>    Affects Versions: eventadmin 1.0.0
>            Reporter: Carsten Ziegeler
>            Assignee: Karl Pauls
>            Priority: Minor
>         Attachments: ea.patch
>
>
> The current event admin implementation puts all events into one single queue and processes
this queue is in one thread. This creates a bottleneck when different threads send events
as they have to wait for other threads to be processed first. Events from different threads
can be processed in parallel.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message