xsys.cpp.svn-base

来自「这是和p2p相关的一份源码」· SVN-BASE 代码 · 共 91 行

SVN-BASE
91
字号
// ------------------------------------------------// 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( &ltime );	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 + =
减小字号Ctrl + -
显示快捷键?