Re: [PATCH v2] git daemon: avoid waking up too often
From: Johannes Schindelin <hidden>
Date: 2016-06-15 22:45:00
Hi, On Wed, 23 Jul 2008, Johannes Sixt wrote:
Johannes Schindelin schrieb:quoted
To avoid waking up unnecessarily, a pipe is set up that is only ever written to by child_handler(), when a child disconnects, as suggested per Junio. This avoids waking up the main process every second to see if a child was disconnected.This makes porting this beast to Windows practically impossible because we cannot have a poll() implementation that waits both on a listening socket and a pipe. :-(
Umm. We also do not have signal handlers, do we? AFAICT you wanted to simulate _this_ program's fork() with a start_async(), right? All you have to do is to refactor the code with the pipe to do the update (properly guarded by a mutex, which is called "CriticalSection" in Windows speak, since it is impossible for Microsoft to accept common conventions). The biggest part to get this beast running on Windows is to move it to the start_async() method, not above-mentioned refactoring. Ciao, Dscho