emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Concurrency


From: Ken Raeburn
Subject: Re: Concurrency
Date: Mon, 29 Mar 2010 12:25:32 -0400

On Mar 28, 2010, at 17:17, Tom Tromey wrote:
> * The current code makes no attempt to portable, it relies on POSIX
>  threads and the GNU __thread extension.  This is not too hard to fix.
>  I think it is reasonably important to keep __thread on systems that
>  support it, for performance.

From what I understand, porting to Windows should be easy enough.  "A simple 
matter of coding."

Dealing with __thread shouldn't be hard if it's not used pervasively, so 
pthread_{get,set}specific calls can be used in its place.

> * Suppose you have existing elisp that creates a process with a filter,
>  and the filter changes a let-bound variable, and the "outer" elisp
>  blocks in sit-for waiting for the filter to do its thing.  Nothing in
>  the current code guarantees that the process filter will be run in the
>  "correct" thread.

That may be a reason to force the filter to run in the same thread that created 
it.  Perhaps process filters could be run at thread-switch opportunities like 
'yield', too?  (And vice versa -- perhaps calls that permit the running of 
process filters should also permit thread switching?)

Sounds like this is coming along nicely!

Ken



reply via email to

[Prev in Thread] Current Thread [Next in Thread]