pengines icon indicating copy to clipboard operation
pengines copied to clipboard

method of pulling output is painful

Open Anniepoo opened this issue 8 years ago • 1 comments

Having the httpRequest for pull_response wait until there is some is painful.

See for example the code

          if (proof.getNearestInt("X") < 3) {  // change this to a larger number to see it hang
              // this hangs on the last proof
              // This is referred to in https://github.com/SWI-Prolog/pengines/issues/19
              String out = io.getOutput();
              if(out != null) {
                  System.out.println("I got " + out + " from the server");
              }
          }

in ManualAsk.java in JavaPengines.

Am I off in the weeds here, or is this just painful?

Anniepoo avatar May 08 '16 02:05 Anniepoo

There is little choice given the one-direction HTTP protocol. So, if you get a server response, it may either be a binding or output (or destroy, ...) You can handle this all quite well using event based programming. If you want a waiting loop, it might be an idea to install a callback for handling output.

This, if I understood your question ok ...

JanWielemaker avatar May 08 '16 09:05 JanWielemaker