ProxyServerTcp / hv_utils.cpp
xukc
[feat]proxy framework
83607bc
raw
history blame
583 Bytes
#include "include/hv_utils.h"
int thread_num = 4;
hloop_t** worker_loops = NULL;
void init_loop(int _thread_num, hthread_routine worker_thread) {
thread_num = _thread_num;
worker_loops = (hloop_t**)malloc(sizeof(hloop_t*) * thread_num);
for (int i = 0; i < thread_num; ++i) {
worker_loops[i] = hloop_new(HLOOP_FLAG_AUTO_FREE);
hthread_create(worker_thread, worker_loops[i]);
}
}
hloop_t* get_next_loop() {
static int s_cur_index = 0;
if (s_cur_index == thread_num) {
s_cur_index = 0;
}
return worker_loops[s_cur_index++];
}