Sunnet 启动

Sunnet 启动
思路:
将Sunnet 系统下的业务调度线程和网络事件线程全部启动起来
看懂:

你需要了解Sunnet 计算任务的调度时如何设计的
你需要了解Sunnet 网络事件线程时如何构思的

void Sunnet::Start(){
  singal(SIGPIPE,SIG_IGN);
  StartWorker(); //将所有的工作线程全部启动
  StartSocket(); //将Epoll事件线程启动
}

void Sunnet::StartWorker(){
	//设WORKER_NUM 为某个可配置的工人数量
	for(int i = 0 ; i < WORKER_NUM; ++i){
		//从堆区new出一个Worker 对象
		Worker* worker = new Worker();
		worker->id = i;
		worker->eachNum = 1 << i;
		
		thread* wt = new thread(*worker);
		workers.push_back(worker);
		workerThreads.push_bac(wt);
	}
}

void Sunnet::StartSocket(){
	SocketWorker* = new SokcetWorker();
	socketWorker->Init();
	sockThread = new thread(*socketWorker);
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值