[PATCH 5/5] quartzdrv: Implement MsgWaitForMultipleObjectsEx and initial Carbon event handling.

Pierre d'Herbemont pdherbemont at free.fr
Mon Oct 30 04:41:09 CST 2006


On 26 oct. 06, at 12:47, Alexandre Julliard wrote:

> I don't think polling is an acceptable way to wait for events. You
> really need to get a file descriptor or some other handle that you can
> wait on.

I am sure it isn't. But I am not sure of the proper solution. I have  
two ideas:

1) Change wineserver to relay on Carbon events to send (some of its)  
message, instead of interrupting the wine thread while waiting for a  
file descriptor. The wine thread could be waiting via the regular  
carbon run loop for an event, and the wineserver could send a carbon  
event as soon as the fd triggers select() end.

2) Launch a 'carbon' thread which will run the carbon run loop (which  
does not poll), and writes to a fd as soon as it receive events.

I think 2) may be preferred but to have a separate thread that watch  
event and an other that act on the UI tends to be tricky.

Pierre.




More information about the wine-devel mailing list