gpt4 book ai didi

c - 如何在两个应用程序之间共享一个共享库(*.so)实例

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:25:31 27 4
gpt4 key购买 nike

我目前创建了一个共享库(libshared.so),其中包含一个变量“a”,它将 由共享库api修改。我有两个应用程序 app1 和 app2。 app1 正在使用 共享库 api,它改变了“a”的值。现在同时运行 app2 时 应该看到更改后的值。 这违背了共享库的实际使用,作为共享的单独实例 将为每个应用程序创建库。 现在我想在两个 app1 和 app2 之间使用共享库的单个实例,这样 他们可以看到共享库的相同代码和数据段。 有什么可能的方法来实现这一点,通过改变 gcc 链接器标志

最佳答案

这些答案:

会打破您对共享库方法的期望。

我建议您看一下 Shared MemoryPOSIX API shmget

一个进程将充当服务器并创建共享内存并将共享内存 key 提供给客户端。

另一种方法是创建一个管道来在进程之间共享数据

你可以阅读 this page 以获得更多关于 linux 进程间通信的信息

关于c - 如何在两个应用程序之间共享一个共享库(*.so)实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35788924/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com