⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.cpp.svn-base

📁 这是和p2p相关的一份源码
💻 SVN-BASE
字号:
// ------------------------------------------------// File : main.cpp// Date: 4-apr-2002// Author: giles// Desc: //		see .cpp for details//		// (c) 2002 peercast.org// ------------------------------------------------#include <stdarg.h>#include "stdio.h"#include "channel.h"#include "servent.h"#include "servmgr.h"#include "osx/xsys.h"#include <sys/types.h>#include <unistd.h>#include <signal.h>#include <stdlib.h>// ----------------------------------ChanMgr *chanMgr;ServMgr *servMgr;Sys *sys;String iniFileName;ThreadInfo rootThread;bool quit=false;// ----------------------------------void setSettingsUI(){}// ----------------------------------void showConnections(){}// ----------------------------------void PRINTLOG(LogBuffer::TYPE type, const char *fmt,va_list ap){	char str[4096];	vsprintf(str,fmt,ap);	if ((servMgr->showLog & (1<<type)) && (!servMgr->pauseLog))	{		if (type != LogBuffer::T_NONE)			printf("[%s] ",LogBuffer::getTypeStr(type));		printf("%s\n",str);		sys->logBuf->write(str,type);	}}// ----------------------------------void LOG(const char *fmt,...){	va_list ap;  	va_start(ap, fmt);	PRINTLOG(LogBuffer::T_DEBUG,fmt,ap);}// ----------------------------------void LOG_DEBUG(const char *fmt,...){	va_list ap;  	va_start(ap, fmt);	PRINTLOG(LogBuffer::T_DEBUG,fmt,ap);}// ----------------------------------void LOG_ERROR(const char *fmt,...){	va_list ap;  	va_start(ap, fmt);	PRINTLOG(LogBuffer::T_ERROR,fmt,ap);}// ----------------------------------void LOG_NETWORK(const char *fmt,...){	va_list ap;  	va_start(ap, fmt);	PRINTLOG(LogBuffer::T_NETWORK,fmt,ap);}// ----------------------------------void LOG_CHANNEL(const char *fmt,...){	va_list ap;  	va_start(ap, fmt);	PRINTLOG(LogBuffer::T_CHANNEL,fmt,ap);}// ----------------------------------void sigProc(int sig){	switch (sig)	{		case 2:			if (!quit)				LOG_DEBUG("Received QUIT signal");			quit=true;			break;	}}// ----------------------------------int main(int argc, char* argv[]){//	if (fork() != 0)//		return 0;    signal( SIGPIPE, SIG_IGN );    pthread_sigmask( SIG_BLOCK, sigmask(SIGPIPE), NULL );	sys = new XSys();	iniFileName.set("peercast.ini");	if (argc > 2)    {        if (strcmp(argv[1],"-inifile")==0)			iniFileName.setFromString(argv[2]);    }	servMgr = new ServMgr();	chanMgr = new ChanMgr();	servMgr->loadSettings(iniFileName.cstr());	if (!servMgr->start())	{		fprintf(stderr,"Unable to start main threads");		return -1;	}	signal(SIGINT, sigProc); 	while (!quit)		sys->sleep(1000);	LOG_DEBUG("Saving settings to %s",iniFileName.cstr());	servMgr->saveSettings(iniFileName.cstr());	return 0;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -