Http后台请求你好,
我正在尝试使用 HTTP 请求功能,但通常需要一些时间才能返回我请求的数据。我想知道是否可以在后台发送 HTTP 请求,然后继续执行脚本。稍后当需要数据时,我可以检查它是否返回,然后继续或等待它返回。如果可能的话,我可以并行处理多个需要的请求,而不是串行运行它们。
感谢您的帮助
脚本Re: Http 后台请求您好,我可以报告说在 JMP 17 时间框架内已经在该领域完成了一些工作。 现在可以以名为 New Multi HTTP Request() 的新函数的形式发送多个 HTTP 请求。 JMP 17 将于 2022 年秋季全面上市。 如果您有权访问 Early Adopter 计划,您现在就可以试用它。
Re: Http 后台请求JMP 可以运行 JMP 吗?
Schedule 仅在 JMP 空闲时(或从正在运行的脚本中调用 wait())在前台运行。
Re: Http 后台请求我自己从未尝试过,但 JSL 有一个可以创建独立线程的“Schedule()”命令。 但是,您不能创建超过 1 个线程。 因此,在您的情况下,可以将 HTTP 请求发送到该线程,但它们仍将连续运行。
https://www.jmp.com/support/help/en/15.2/index.shtml#page/jmp/scheduling-actions.shtml
更新:请参阅下面 Craig Hales 的回复。 显然,以这种方式安排的命令仅在 JMP 空闲且命令仍在前台运行时运行。 在我回答之前,我没有一个很好的例子来制作原型。 对不起,如果我造成任何混乱。
另一种方法是使用“Run Program()”命令运行多个 JMP 实例。 我相信这些可以在不等待外部程序完成执行的情况下运行。 我以前试过这个但从来没有用于多线程。 你刚刚给了我一个我现在想尝试的想法!
https://www.jmp.com/support/help/en/15.2/index.shtml#page/jmp/run-external-programs.shtml
https://www.jmp.com/support/help/en/15.2/index.shtml#page/jmp/utility-functions.shtml#ww4547957
更新 2:另请参阅 Craig Hales 关于此想法的博客文章。 非常感谢克雷格! https://community.jmp.com/t5/Uncharted/Can-JMP-run-JMP/ba-p/283748
我认为这两种解决方案都不是理想的,但它们可能会改善脚本的运行时间。 第一个更容易实现,第二个将需要对您的代码进行一些重新设计,并且您必须处理启动和退出 JMP 的问题。