Two things: 1. How about expiring client's unix file descriptors by having wineserver writing a single non-zero byte[*] to the server-communication socket when another client modifies the fd? The code to validate fds before use could then be reduced from a server call to a single nonwaiting poll on NtCurrentTeb()->reply_fd. 2. How about using pipes to implement critical sections? InitCriticalSection would create a pipe and write one byte, EnterCritical section would do a poll on the pipe, followed by a read of one byte, and leave critical section would write one byte back to the pipe. [*] wineserver would write a zero byte when it wished to restart a client after a server call, and the client would need to check this. Mike -- __________________________________________________________________ mailto:[EMAIL PROTECTED] phone: (+612) 9690 5305
- Re: Speeding up wineserver synchronization objects with... Ove Kaaven
- Re: Speeding up wineserver synchronization objects with... Ove Kaaven
- Re: Speeding up wineserver synchronization objects... Robert O'Callahan
- Re: Speeding up wineserver synchronization objects with... Robert O'Callahan
- Re: Speeding up wineserver synchronization objects with... Gavriel State
- Re: Speeding up wineserver synchronization objects with... Alexandre Julliard
- Re: Speeding up wineserver synchronization objects with... Michael McCormack
- Re: Speeding up wineserver synchronization objects with... Robert O'Callahan
- Re: Speeding up wineserver synchronization objects with... Alexandre Julliard
- Re: Speeding up wineserver synchronization objects with... Michael McCormack
- Re: Speeding up wineserver synchronization objects with... Robert O'Callahan
- Re: Speeding up wineserver synchronization objects... Alexandre Julliard
