|
From: | Jan D. |
Subject: | Re: [patch] enhanced mac drag-n-drop |
Date: | Sun, 10 Apr 2005 07:47:04 +0200 |
Thanks. I've just encountered a situation that I'd like to use code conversion, which may call Feval, inside XTread_socket. That is related to a callback function for the clipboard, and it should complete code conversion before it returns. Thus passing events to Lisp does not work here. Is GC the only reason to avoid Feval inside XTread_socket? If so, is it possible to use code conversion together with inhibit_garbage_collection?
The main reason AFAIK is that the Lisp interpreter is not reentrant. If some Lisp code is preempted by a signal and then XTread_socket calls Lisp code, you have two instances of the Lisp interpreter running in parallell, and it is not designed for that. Much like not being thread safe.
Jan D.
[Prev in Thread] | Current Thread | [Next in Thread] |