From: Alex Rousskov Date: Mon, 29 Aug 2011 21:06:59 +0000 (-0600) Subject: Initial support for breaking the "do all queued I/Os" loop. X-Git-Tag: take08~38 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=3d31b6a5f02f541d11a02f26fe5315cc89e1959f;p=thirdparty%2Fsquid.git Initial support for breaking the "do all queued I/Os" loop. --- diff --git a/src/DiskIO/IpcIo/IpcIoFile.h b/src/DiskIO/IpcIo/IpcIoFile.h index f116f98ff7..e5915c1fc7 100644 --- a/src/DiskIO/IpcIo/IpcIoFile.h +++ b/src/DiskIO/IpcIo/IpcIoFile.h @@ -93,6 +93,7 @@ private: static void HandleResponses(const char *const when); void handleResponse(IpcIoMsg &ipcIo); + static void DiskerHandleMoreRequests(void*); static void DiskerHandleRequests(); static void DiskerHandleRequest(const int workerId, IpcIoMsg &ipcIo); @@ -125,6 +126,9 @@ private: typedef Ipc::FewToFewBiQueue Queue; static std::auto_ptr queue; ///< IPC queue + /// whether we are waiting for an event to handle still queued I/O requests + static bool DiskerHandleMoreRequestsScheduled; + CBDATA_CLASS2(IpcIoFile); };