[ https://issues.apache.org/jira/browse/THRIFT-1890?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13605770#comment-13605770 ]
Jens Geyer edited comment on THRIFT-1890 at 3/18/13 10:58 PM: -------------------------------------------------------------- * added separate wakeup Event * modified overlapped Event cleanup * replaced INFINITE wait with 3 seconds Remarks: 1. Comparing the MSDN requirements for both CancelIoEx() and CancelIo() suggests that CancelIoEx() is probably not supported with XP. 2. In the Delphi version, I used 5 seconds, but the C++ code already uses 3 seconds timeouts in Pipe.cpp. was (Author: jensg): * added separate wakeup Event * modified overlapped Event cleanup * replaced INFINITE wait with 3 seconds to prevent against denial of service Remarks: 1. Comparing the requirements for both CancelIoEx() and CancelIo() suggests that CancelIoEx() is probably not supported with XP. 2. In the Delphi version, I used 5 seconds, but the C++ code already uses 3 seconds timeouts in Pipe.cpp. > C++: Make named pipes server work asynchronously > ------------------------------------------------- > > Key: THRIFT-1890 > URL: https://issues.apache.org/jira/browse/THRIFT-1890 > Project: Thrift > Issue Type: Improvement > Components: C++ - Library > Environment: Windows > Reporter: Jens Geyer > Assignee: Jens Geyer > Fix For: 1.0 > > Attachments: > THRIFT-1890_Cpp_Make_named_pipes_server_work_asynchronously-v2.patch > > > Currently the named pipe server cannot be stopped gracefully due to the way > ConnectNamedPipe() works for synchronous named pipes. The recommended > solution is to run the pipe in "overlapped" mode, allowing the transport to > be closed cleanly. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira