int main() { fiber_manager_set_total_kernel_threads(NUM_THREADS); fiber_mutex_init(&mutex); fiber_t* fibers[NUM_FIBERS]; int i; for(i = 0; i < NUM_FIBERS; ++i) { fibers[i] = fiber_create(20000, &run_function, NULL); } for(i = 0; i < NUM_FIBERS; ++i) { fiber_join(fibers[i]); } test_assert(counter == NUM_FIBERS * PER_FIBER_COUNT); return 0; }
int main() { struct rlimit rl; rl.rlim_max = rl.rlim_cur = 1024*64; if (setrlimit(RLIMIT_NOFILE, &rl) < -1) { return -1; } fiber_mutex_init(&mtx); memset((char*)sharedArr, 0, 64); const char *server_ip = "127.0.0.1"; struct Scheduler *sch = create_scheduler(8); if (sch == NULL) return 0; struct TcpServer *server = create_tcp_server(server_ip, 12400, data_processor); if (server == NULL) return 0; start_scheduler(sch); run_tcp_server(sch, server); return 0; }