#include #include #include #include #include //Cross platform sleep function #ifdef __WIN32__ #define sleep _sleep #elif _MSC_VER #include #define sleep Sleep #else #define _XOPEN_SOURCE_EXTENDED int msleep(unsigned long milisec) { struct timespec req={0}; time_t sec=(int)(milisec/1000); milisec=milisec-(sec*1000); req.tv_sec=sec; req.tv_nsec=milisec*1000000L; while(nanosleep(&req,&req)==-1) continue; return 1; } #define sleep msleep #endif