Exemplo n.º 1
0
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;
}
Exemplo n.º 2
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;
}