背景
我正在用 C++ 编写一个多线程的 websocket 服务器。
问题
当我尝试集成我的 HTTP 解析器时,MKFAHTTPRequest Request( std::string( Buffer ) );
在执行过程中被完全跳过。
我已经清理了项目并添加了 -Wall 和 -Werror (它应该告诉我这Request
是一个未使用的变量,但它没有)。
void operator()(){
while( true ){
if( m_Socket->is_open() ){
char Buffer[1024];
boost::system::error_code Error;
std::cout << "MKFAConnection::operator()() - Reading..." << std::endl;
m_Socket->read_some( boost::asio::buffer( Buffer, sizeof( Buffer ) ), Error );
if( !Error ){
// This line is getting skipped!?!?!?
MKFAHttpRequest Request( std::string( Buffer ) );
m_Socket->write_some( boost::asio::buffer( std::string( "Hello World" ) ) );
} else break;
} else break;
}
}