[ 
https://issues.apache.org/jira/browse/THRIFT-591?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13022587#comment-13022587
 ] 

Carl Steinbach commented on THRIFT-591:
---------------------------------------

Maybe there was some miscommunication earlier, because I think that's actually 
what this patch does. Here's an excerpt from the CPP_LIB_CFG doc that was 
included in the patch:

{quote}
The Thrift C++ libraries can be configured to use one or more socket and server 
implementations, and either of two threading implementations. The reason that 
this capability exists is because the code was modified in 2009 so that it 
could be built in Visual Studio on Windows. That effort added Asio-based socket 
and server implementations that exist alongside the existing implementations. 
It also added a Boost.thread threading implementation that can replace the 
pthread implementation.

The original classes are TSocket, TServerSocket, TSocketPool, and 
TNonblockingServer. The Asio-based 
parallel classes are called TAsioSocket, TAsioServerSocket, TAsioSocketPool, 
and TAsioNonblockingServer. 
The source code headers have been set up in such a way that:

* Both implementation sets may be available (i.e. TSocket and TAsioSocket will 
be separate classes)
* The TAsio* family can be synonyms for the TSocket family (i.e. #define 
TAsioSocket TSocket, etc.)
* The TSocket family can be synonyms for the TAsio* family (i.e. #define 
TSocket TAsioSocket, etc.)

The Boost threading was added to support threading in Windows without Cygwin. 
Either the pthread 
or Boost.thread implementation may be chosed.
{quote}

So if someone were to rebase this patch to trunk, do you think it could get 
committed?

> Make the C++ runtime library be compatible with Windows and Visual Studio
> -------------------------------------------------------------------------
>
>                 Key: THRIFT-591
>                 URL: https://issues.apache.org/jira/browse/THRIFT-591
>             Project: Thrift
>          Issue Type: New Feature
>          Components: C++ - Library
>         Environment: Windows XP and above, Visual Studio 2005 and above
>            Reporter: Rush Manbert
>         Attachments: MSVCSupportUpdatedButUntestedForThrift-0.4.0.patch, 
> MsvcPatchSupportScripts.zip, 
> THRIFT-591_MSVCSupportUpdatedButUntestedForThrift-0.4.0.patch_error.log, 
> ThriftMsvcPatchForSvnRev818530.txt.zip, thrift-818530-patched.zip, 
> thriftWindowsRev818530BugFix.zip
>
>
> Modify the C++ runtime library to be compatible with Windows and able to be 
> built by Visual Studio.
> The work has been done and a patch is available. I will attach it soon.
> Note that this issue and the attached patch supercedes the patches that I 
> wrongly attached to JIRA 311. That issue is about making the C++ library 
> support async client/server interaction.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to