Esempio n. 1
0
/* 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();
}