/* executing task for second thread */ void *thread2_run( void *arg ) { if ( data == NULL ) { if ( (data = data_alloc()) == NULL ) { return (void *) (-1); } } data_hold( data ); data->number = 2222; printf( "data->number is %d\n", data->number ); data_release( data ); return (void *) 0; }
int main(int argc, char** argv) { data_init(); network_init(); while (1) { post_receive_data(); if (wait_receive_data()) { printf("Warning: receive data failed\n"); continue; } handle_data(); send_ack(); } network_release(); data_release(); }