Python 调用 cpp 动态库, 使用了 cpp 内的 join 函数

175 天前
 leeside

1.c++这边的自己的库有一个接口是包装的 thread 的 join 函数 2.python 的包是通过 swig 包装的 c++库,swig 做的也是使用 cpython 在基础上生成的包装类 3.跑起来没啥问题,使用 ctrl c 不能直接关闭是为什么呢,是因为信号不能正确的传递吗 4.搜索了一圈没查到相关的资料,是我搜的不对吗

1597 次点击
所在节点    Python
4 条回复
linquan
175 天前
你搜下 python 键盘信号处理,加一个 ctrl+C 终止程序的函数试试
clemente
175 天前
pybind 可以啊
exiledkingcc
175 天前
本来就不能关闭啊,ctrl+C 的信号只会给到主线程,其它线程不会自动结束。
解决方法:C++用 jthread 或者把 thread 中循环加判断,自己退出;或者,不用 join ,用 detach 。
leeside
174 天前
@linquan
@clemente
@exiledkingcc 感谢各位,这就去试试。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1054415

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX