サービスモジュールでコールバックを使用します。手続きパラメータとして渡したいコールバック関数のポインタ。RPGLEのポインタでプロシージャを呼び出す方法
サービスモジュールのコールバック関数をどのように呼び出すことができますか?
psevdocode:
メインコード:機能
PROCPTRキーワードに建て
dcl-pr Proc2;
ptr pointer;
end-pr;
dcl-s ptr inz(%Addr(Proc1))
Proc2(ptr);
dcl-proc Proc1;
dcl-pi *n;
parm1 char(123);
end-pi;
...
end-proc Proc1;
サービスプログラムの開発
dcl-proc Proc2;
dcl-pi *n;
ptr pointer;
end-pi;
dcl-s param char(123) inz('xxxaaaqqq')
*ptr(param); // call callback
end-proc Proc2;
parmsを追加する方法を教えてください。私は感心します。あなたはプログラム名を手続きに住所で渡すことに成功しました。 – danny117
@ danny117、parmを追加しますか?パラメータを追加するだけで、コールバックにはProc2と同様にコールバックがあります。 – Charles
parmはコールバックのアドレスです。それが有用ないくつかのデータを持っていれば印象的です。成功したparmコールバック(param:success); – danny117