Qt main thread blocked on pthread_join() causes strange result



  • Hello,
    my app starts some posix threads and then, in particular circumstances, the Qt main thread goes in pthread_join to wait for another thread terminates its life (and do somethings). In this case, Qt main thread
    got stuck and never got woken up on meego harmattan. If I do the same but step by step under debug Qt main thread goes correctly and get released from within pthread_join call....
    It seems like Qt main thread blocked on pthread_join (while posix thread terminate) causes a freeze of the entire app (posix thread never terminates like it is frozen too)...during this stage if I force termination using stop button of QtCreator, all sequences (printing those with qDebug) are shown correctly!

    Someone knows how I can get rid of this Qt related thread problem?



  • It's very strange, but I've discovered that on Harmattan, if I close a socket, it never emits EINTR on native thread blocked on that socket.
    This prevent pthread_join call from being never woken up...
    I have resolved right now using sigalrm that seems to work.


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.