Exemple #1
0
int main( void )
{
	coro_init();
	for ( ; ; ) {
		if ( coro_schedule() == 0 ) break;
	}
	coro_uninit();

	return ( 0 );
}
Exemple #2
0
static void symmetric_test()
{
    coro_start();
    coro_create((coro_func_t)gen_even, (void*)11);
    coro_create((coro_func_t)gen_odd, (void*)11);
    coro_create((coro_func_t)gen_third, (void*)11);

    coro_dump();
    coro_schedule();
    fprintf(stdout, "\n");
    coro_finish();
}
Exemple #3
0
static void calc_test(const char* data)
{
    coro_start();
    const char* stream = data ? data: "23 46+10*100-50-10*";
    fprintf(stderr, "calc '%s'\n", stream);
    int result = 0;
    coro_create((coro_func_t)decode, (void*)stream);
    coro_create((coro_func_t)parse, (void*)&result);
    coro_schedule();
    printf("result = %d\n", result);
    coro_finish();
}