void* do_uart_thread(void* data) { Uart *x = (Uart*)data; struct timespec tim,tim2; uint8_t c; int i = 0; tim.tv_sec = 0; tim.tv_nsec = 100000L; while(1){ nanosleep(&tim,&tim2); if(x->isReady() == READY){ int n = x->readApi(&c); // Doc data tu comport if(n > 0){ x->getData(c); } } } }