【问题标题】:Asynchronous request are not always executed异步请求并不总是被执行
【发布时间】:2020-01-25 04:34:00
【问题描述】:

我目前正在处理一些异步调用。

我目前遇到一个问题,有时调用什么都不做,也不会抛出错误或其他什么。

在 20 到 30 次通话中会发生一次、两次。

这是我目前拥有的。

DEFINE VARIABLE hAppServer AS HANDLE NO-UNDO.

hAppServer = getServersHandle(AppSrvConnectionEnum:apsvWorkFlow).    

RUN ServiceInterface/StartAsync.p ON SERVER hAppServer ASYNCHRONOUS EVENT-PROCEDURE "ProcedureComplete" IN hCallBack  (INPUT ipiWorkflowId).

我在 Progress 版本 11.6.4 上运行它。我还在ServiceInterface/StartAsync.p 过程中添加了消息,并且当呼叫未通过时,当然不会将消息写入应用服务器。

有人有想法吗?

【问题讨论】:

  • Appserver 日志文件中出现任何错误?

标签: asynchronous openedge progress-4gl


【解决方案1】:

在我的脑海中,您可能对服务器有一个死引用。仅出于调试目的,请尝试向 valid-handle(hAppServer) 和 hAppServer 本身发送消息,因为我怀疑在某些时候它返回了无效的引用(尽管我认为枚举在运行时没有更改)。乍一看,您发布的代码没有任何问题。

【讨论】:

  • getServerHandle 方法实际上已经在返回有效句柄之前检查了这一点。
  • 但是您是否向句柄本身发送了消息?在调用没有到达服务器的情况下它会改变吗?
猜你喜欢
  • 2021-10-09
  • 2022-01-06
  • 1970-01-01
  • 2015-10-24
  • 1970-01-01
  • 2016-02-13
  • 2018-12-05
相关资源
最近更新 更多