📄 xsys.cpp
字号:
// ------------------------------------------------// File : lsys.cpp// Date: 4-apr-2002// Author: giles// Desc: // XSys derives from Sys to provide basic Linux functions such as starting threads.//// (c) 2002 peercast.org// ------------------------------------------------#include <time.h>#include <pthread.h>#include <signal.h>#include <stdlib.h>#include "xsys.h"#include "xsocket.h"#include "stats.h"// ---------------------------------XSys::XSys(){ stats.clear(); rndGen.setSeed(getTime()); rndSeed = rnd();}// ---------------------------------unsigned int XSys::getTime(){ time_t ltime; time( <ime ); return ltime;}// ---------------------------------ClientSocket *XSys::createSocket(){ return new XClientSocket();} typedef void *(*THREAD_PTR)(void *);static void * thread_entry( void *param ){ signal( SIGPIPE, SIG_IGN ); pthread_sigmask( SIG_BLOCK, sigmask(SIGPIPE), NULL ); ThreadInfo *info = (ThreadInfo *)param; return (void *)info->func( info );}// ---------------------------------bool XSys::startThread(ThreadInfo *info){ info->active = true; pthread_t thread; pthread_attr_t attr; pthread_attr_init(&attr); pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED); return pthread_create( &thread, &attr, &thread_entry, info ) == 0;// return pthread_create( &thread, &attr, (THREAD_PTR)info->func, info ) == 0;}// ---------------------------------void XSys::sleep(int ms){ ::usleep(ms*1000);}// ---------------------------------void XSys::appMsg(long msg, long arg){ //SendMessage(mainWindow,WM_USER,(WPARAM)msg,(LPARAM)arg);}// ---------------------------------void XSys::getURL(const char *url){}// ---------------------------------void XSys::exit(){ ::exit(0);}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -