Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. Problem with QThread..
Qt 6.11 is out! See what's new in the release blog

Problem with QThread..

Scheduled Pinned Locked Moved General and Desktop
14 Posts 8 Posters 9.5k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S Offline
    S Offline
    Smar
    wrote on last edited by
    #5

    Usually (mis)using threads causes gui going unresponsive...

    Qt already have event loop, using own events and/or signal/slot system.

    http://doc.qt.nokia.com/latest/signalsandslots.html
    http://doc.qt.nokia.com/latest/eventsandfilters.html

    1 Reply Last reply
    0
    • G Offline
      G Offline
      giesbert
      wrote on last edited by
      #6

      endla.ravi what do you want to do in your infinite loop? what is it needed or? Is it background processing (could be done in a thread) or shall it make event processing (is already done by return a.exec();)?

      Please specify your needs a bit more.

      Nokia Certified Qt Specialist.
      Programming Is Like Sex: One mistake and you have to support it for the rest of your life. (Michael Sinz)

      1 Reply Last reply
      0
      • E Offline
        E Offline
        endla.ravi
        wrote on last edited by
        #7

        @above,

        I am actually coding for a messenger

        and my client should always be in listen mode,it should be listening for messages from other clients.
        But when the client i listening for messages,the client become crashes after some time.

        How could i handle this?

        1 Reply Last reply
        0
        • G Offline
          G Offline
          giesbert
          wrote on last edited by
          #8

          You can look at the examples: "here":http://doc.qt.nokia.com/4.7/network-network-chat.html

          Nokia Certified Qt Specialist.
          Programming Is Like Sex: One mistake and you have to support it for the rest of your life. (Michael Sinz)

          1 Reply Last reply
          0
          • W Offline
            W Offline
            Wolf P.
            wrote on last edited by
            #9

            You have to subclass MyThread from QThread then define in its run method what you want to do in the background. Did you read the "basic thread example":http://doc.qt.nokia.com/4.7/qthread.html#details ?

            1 Reply Last reply
            0
            • R Offline
              R Offline
              rugginoso
              wrote on last edited by
              #10

              Maybe in your case it's better to use the QThread::run() default implementation that runs a local (for thread) event loop.
              You simply have to create your QWidget and your QThread, than use QObject::moveToThread() method and call the QThread::start() method.

              References:
              http://labs.qt.nokia.com/2010/06/17/youre-doing-it-wrong/
              http://doc.qt.nokia.com/4.7/qthread.html#start
              http://doc.qt.nokia.com/4.7/qobject.html#moveToThread

              1 Reply Last reply
              0
              • D Offline
                D Offline
                dangelog
                wrote on last edited by
                #11

                [quote]and my client should always be in listen mode,it should be listening for messages from other clients.[/quote]

                Please read my article here: http://developer.qt.nokia.com/wiki/ThreadsEventsQObjects . This seems to be the another case where threads are absolutely not needed (and indeed they just make your life a lot harder).

                Software Engineer
                KDAB (UK) Ltd., a KDAB Group company

                1 Reply Last reply
                0
                • R Offline
                  R Offline
                  rugginoso
                  wrote on last edited by
                  #12

                  [quote author="peppe" date="1292837082"]
                  Please read my article here: http://developer.qt.nokia.com/wiki/ThreadsEventsQObjects . This seems to be the another case where threads are absolutely not needed (and indeed they just make your life a lot harder).[/quote]

                  Really good article :D

                  1 Reply Last reply
                  0
                  • W Offline
                    W Offline
                    Wolf P.
                    wrote on last edited by
                    #13

                    [quote author="Il Rugginoso" date="1292836477"] http://labs.qt.nokia.com/2010/06/17/youre-doing-it-wrong/[/quote] Thanks for the tipp! I didn't know the concepts behind the QThread class...

                    1 Reply Last reply
                    0
                    • R Offline
                      R Offline
                      rugginoso
                      wrote on last edited by
                      #14

                      [quote author="Wolf P." date="1292842687"][quote author="Il Rugginoso" date="1292836477"] http://labs.qt.nokia.com/2010/06/17/youre-doing-it-wrong/[/quote] Thanks for the tipp! I didn't know the concepts behind the QThread class...
                      [/quote]

                      You're welcome :D

                      1 Reply Last reply
                      0

                      • Login

                      • Login or register to search.
                      • First post
                        Last post
                      0
                      • Categories
                      • Recent
                      • Tags
                      • Popular
                      • Users
                      • Groups
                      • Search
                      • Get Qt Extensions
                      • Unsolved