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. Is this an efficient use of QProcess?

Is this an efficient use of QProcess?

Scheduled Pinned Locked Moved Solved General and Desktop
26 Posts 4 Posters 8.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.
  • SGaistS Offline
    SGaistS Offline
    SGaist
    Lifetime Qt Champion
    wrote on last edited by
    #16
    QProcess::execute(file1, args1);
    

    Interested in AI ? www.idiap.ch
    Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

    G 1 Reply Last reply
    2
    • SGaistS SGaist
      QProcess::execute(file1, args1);
      
      G Offline
      G Offline
      graniteDev
      wrote on last edited by
      #17

      @SGaist I could run these from a static function? How then do I know when they are finished if there is no object to emit the signal?

      1 Reply Last reply
      0
      • SGaistS Offline
        SGaistS Offline
        SGaist
        Lifetime Qt Champion
        wrote on last edited by
        #18

        Did you read the documentation of the function ? execute runs the command and waits for it to finish. The returned value indicates what happened.

        Interested in AI ? www.idiap.ch
        Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

        G 1 Reply Last reply
        3
        • SGaistS SGaist

          Did you read the documentation of the function ? execute runs the command and waits for it to finish. The returned value indicates what happened.

          G Offline
          G Offline
          graniteDev
          wrote on last edited by
          #19

          @SGaist yes but if i just run QProcess::execute(file1, args1); there is no object there for me to deal with.

          1 Reply Last reply
          0
          • SGaistS Offline
            SGaistS Offline
            SGaist
            Lifetime Qt Champion
            wrote on last edited by
            #20

            What do you want to deal with ? In the code you shown until now, what you are doing with your QProcess objects is already done "internally" by execute.

            Interested in AI ? www.idiap.ch
            Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

            G 1 Reply Last reply
            0
            • SGaistS SGaist

              What do you want to deal with ? In the code you shown until now, what you are doing with your QProcess objects is already done "internally" by execute.

              G Offline
              G Offline
              graniteDev
              wrote on last edited by
              #21

              @SGaist never mind, I misunderstood because I'm not used to dealing with these. I was concerned that the subsequent processes could be started before the previous one finished, however execute is not asynchronous like start() is if I understood the documentation correctly.

              1 Reply Last reply
              0
              • SGaistS Offline
                SGaistS Offline
                SGaist
                Lifetime Qt Champion
                wrote on last edited by
                #22

                It is indeed not asynchronous.

                Interested in AI ? www.idiap.ch
                Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                G 2 Replies Last reply
                0
                • SGaistS SGaist

                  It is indeed not asynchronous.

                  G Offline
                  G Offline
                  graniteDev
                  wrote on last edited by
                  #23

                  @SGaist ok well thankyou, I will give this a try.

                  1 Reply Last reply
                  0
                  • SGaistS SGaist

                    It is indeed not asynchronous.

                    G Offline
                    G Offline
                    graniteDev
                    wrote on last edited by
                    #24

                    @SGaist Worked. Wow is that much much simpler.

                    If I may though, for my future reference, if I needed to actually use a QProcess *process = new QProcess(this); to run multiple things, how would I go about it?

                    JonBJ 1 Reply Last reply
                    0
                    • SGaistS Offline
                      SGaistS Offline
                      SGaist
                      Lifetime Qt Champion
                      wrote on last edited by
                      #25

                      If in a fashion similar to execute see the Synchronous Process API in QProcess's documentation.

                      Interested in AI ? www.idiap.ch
                      Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                      1 Reply Last reply
                      1
                      • G graniteDev

                        @SGaist Worked. Wow is that much much simpler.

                        If I may though, for my future reference, if I needed to actually use a QProcess *process = new QProcess(this); to run multiple things, how would I go about it?

                        JonBJ Offline
                        JonBJ Offline
                        JonB
                        wrote on last edited by
                        #26

                        @graniteDev said in Is this an efficient use of QProcess?:

                        If I may though, for my future reference, if I needed to actually use a QProcess *process = new QProcess(this); to run multiple things, how would I go about it?

                        Exactly as per your original code, except change execute() to start().

                        1 Reply Last reply
                        1

                        • Login

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