thrift client是非线程安全,多线程下使用可能导致server和客户端程序崩溃。client的每次远程方法调用其实是多次调用socket写操作,非原子操作。多线程交错使用,使从代码上看来是一次性完整的东西会出现错乱。所以必须从socket层次一开始就保证其独立性。这就是根本原因了。
http://blog.sina.com.cn/s/blog_98cf2a6f0101a1ob.html
thrift client是非线程安全,多线程下使用可能导致server和客户端程序崩溃。client的每次远程方法调用其实是多次调用socket写操作,非原子操作。多线程交错使用,使从代码上看来是一次性完整的东西会出现错乱。所以必须从socket层次一开始就保证其独立性。这就是根本原因了。
http://blog.sina.com.cn/s/blog_98cf2a6f0101a1ob.html