由于许多贡献者,我一直在关注 Thrift 对 Windows 和 VS 开发的支持。编译器和 C++ 库有 VS 2010 项目,我已经确认它们在 0.8 中运行良好。 http://thrift.apache.org/download/
我的问题是关于在 Thrift 中实现传输层,特别是管道(命名或匿名)。我一直在使用有效的 TCP 传输,但在应用程序都是本地的情况下,它是矫枉过正的,通常会导致其他并发症,例如 Windows 防火墙。我想做的是在 Windows 下添加管道传输支持。
Thrift 中添加了命名管道传输。从 SVN 获取开发代码(当前为 0.8.0-dev)——有关下载详细信息,请参阅http://thrift.apache.org/download/。假设它不会破坏任何东西,它应该包含在 0.9.0 稳定版本中。
TPipe 传输现在具有对 *NIX 和 Windows 的跨平台支持。它在 Windows 下被实现为命名或匿名管道;在 *NIX 下,它通过利用 TSocket 来使用域套接字。*NIX 还不支持匿名管道。添加它应该相对简单,但似乎没有需求。
我还贡献了一个示例项目,应该可以更轻松地开始使用它。SVN 主干现在在thrift/contrib/transport-sample下有这个