All pastes #994455 Raw Edit

Something

public text v1 · immutable
#994455 ·published 2008-04-23 12:45 UTC
rendered paste body

void SocketReaderRunnable::run()
{
	if(!sSocketManager.GetEventBase())
	{
		sLog.outError("<Socket manager> Couldn't start Socket worker thread. Event_base is wrong!");
		return;
	}

	sLog.outString("<Socket manager> Socket worker thread is started");
event_base* pBase = sSocketManager.GetEventBase();
	int res = 0;
	while(!bStop)
	{
if(pBase != sSocketManager.GetEventBase())
sLog.outError("FATAL!!!!");
		Sleep(10);
		res = event_base_loop(pBase, EVLOOP_ONCE);
		//	0 if successful, 
		//	-1 if an error occurred
		//	1 if no events were registered.
		if(res == -1)
		{
			sLog.outError("<Socket manager> Critical error is occured in event_loot. Exit.");
			sSocketManager.DisconnectAll();
			break;
		}
 		else if(res == 1)
		{
			sLog.outError("<Socket manager> No events registered for event_loot. Lets check.");
			sSocketManager.Debug_CheckSockets();
		}
		sSocketManager.ClearErasedSockets();
	}
	sLog.outString("<Socket manager> Socket worker thread is finished");
}