Thrift第七课服务器多线程发送异常
场景
成都创新互联是一家集网站建设,高明企业网站建设,高明品牌网站建设,网站定制,高明网站建设报价,网络营销,网络优化,高明网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
C++服务器端为每一个客户端建立多线程发送,没有添加锁,会触发异常:received invalid message type 3 from client。导致服务器端主动断开跟客户端的连接
打印出错的代码在TDispatchProcessor.h文件
相关堆栈代码:
apache::thrift::TOutput::errorTimeWrapper(const char * msg) 行 134C++
apache::thrift::TOutput::printf(const char * message, ...) 行 42C++
apache::thrift::TDispatchProcessor::process(boost::shared_ptr
结论
调用发送的接口最好加锁,或者是单线程发送
分享题目:Thrift第七课服务器多线程发送异常
标题网址:http://ybzwz.com/article/gpjdpd.html