提问人:sorosh_sabz 提问时间:2/19/2015 最后编辑:sorosh_sabz 更新时间:5/26/2023 访问量:3516
如何在另一个进程中调用函数
How can I call a function in another process
答:
1赞
gbajson
5/30/2018
#1
您可以使用 gdb 附加到进程并执行一些函数,例如:
$ gdb -p 17304
Attaching to process 17304
[...]
(gdb) call getppid()
$1 = 29136
在 gdb 中,运行以查看它们。(gdb) info functions
评论
0赞
sorosh_sabz
7/17/2018
我需要一个编程模型来使用这种用法。
0赞
Abdull
8/8/2023
call getppid()
可能会失败,并显示“'getppid' 具有未知的返回类型;将调用强制转换为其声明的返回类型”。在这种情况下,请添加 called-function-appropriate 返回类型 cast: 。call (pid_t) getppid()
0赞
wick
5/26/2023
#2
就像已经解释过的那样,您需要阅读 IPC - 有很多选择。但是,从您的“发布”意图来看,我认为您可以使用一个简单的文件来完成。在循环中的一个进程中使用该 function() 返回值更新它。因此,系统上的所有其他进程都可以读取它。
评论