[
https://issues.apache.org/jira/browse/THRIFT-1890?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jens Geyer updated THRIFT-1890:
-------------------------------
Attachment:
THRIFT-1890_Cpp_Make_named_pipes_server_work_asynchronously-v2.patch
* 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