Hi!
I'm currently porting the dedicated server for our game from win32 to linux.
After fighting my way until it compiles and run... i get extremly slow response from the linux server.
If i connect through LAN, i get like 700~900 ping.
The game is setuped like this :
- The main program is a console app waiting for input to interact with the game server
- The game logic itself is spawned in a thread
In win32, with default thread parameters, everything works perfectly.
But i suspect that i'm not setting up my pthread accordingly for linux.
Here is how i create the thread :
Code:
pthread_attr_t threadAttr; //attribute for parameting the linux thread
pthread_attr_init(&threadAttr);
pthread_attr_setinheritsched(&threadAttr, PTHREAD_EXPLICIT_SCHED);
pthread_attr_setstacksize(&threadAttr,4000); //reserving a 4 meg stack for the game
pthread_attr_setschedpolicy(&threadAttr, SCHED_RR); //trying to
sched_param schedparam;
schedparam.sched_priority = 99; //if i put 100 here the thread doesnt work
pthread_attr_setschedparam(&threadAttr, &schedparam);
if(pthread_create( &threadID, &threadAttr,(PTHREAD_START_ROUTINE)pFuncter, pParam))
{
perror("Thread Creation");
return false;
}
i even tried to run this as root to make sure it wasnt something interfering with my user rights.
Thanks for any suggestions