在C ++中,我可以使用多线程工具将UNIX信号与主程序同步吗?

亚伦·科恩·塔尔

信号处理程序是否设置为sigaction在其自己的线程中运行?是否可以使用Pthreads工具将信号处理程序与主程序同步,例如Pthreads互斥锁?我可以使用C ++ 11类的工具mutexatomic

抱歉,这个问题有点笼统,但是我对信号和线程之间的关系感到困惑。

我正在使用Linux,但该问题通常适用于UNIX。

安德鲁·汉勒

不。

您可以在信号处理程序中安全调用的唯一函数是异步信号安全函数。对于Linux,您可以在signal.7手册页的“异步信号安全功能”下找到一些此类功能的列表,该页面比页面的一半还多。

没有在异步信号安全中列出的任何函数都不能在信号处理程序中安全地调用。

请注意,在Linux上列为async-signal-safe的唯一同步功能是sem_post()

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在C ++中,可以使用多线程工具将UNIX信号与主程序同步吗?

来自分类Dev

我可以在多线程C ++中安全地使用int吗?

来自分类Dev

我可以使用C程序中的C ++模板库吗?

来自分类Dev

我可以使用Xamarin在C#中开发Windows和Mac应用程序吗?

来自分类Dev

C ++中的多线程数据同步

来自分类Dev

使用pybind11将Python解释器嵌入到多线程C ++程序中

来自分类Dev

我可以使用Mongo DB C#驱动程序序列化基类中的属性或字段吗?

来自分类Dev

我可以使用Revo Uninstaller从驱动器D(不是C的分区)中删除程序吗?

来自分类Dev

C:我可以使用libssh转发端口以供外部应用程序使用吗?

来自分类Dev

我可以使用C / C ++编译器吗?

来自分类Dev

我可以使用自动要求管理员权限的GCC编译C程序吗?

来自分类Dev

我可以使用python读取Windows应用程序(c ++)的给定变量吗?

来自分类Dev

我可以使用 C# 或 Powershell 添加/更新 CRM Dynamics 插件程序集吗?

来自分类Dev

C:我可以使用C SDK知道pubnub订阅中的还原选项吗

来自分类Dev

Qt日志记录工具多线程,使用可变数量的参数调用信号和插槽形成另一个线程,将C和C ++混合在一起

来自分类Dev

多线程C程序中的随机函数

来自分类Dev

在 c 中使用 POSIX 信号量的多线程

来自分类Dev

C ++ 11程序可以使用BlueZ吗?

来自分类Dev

我可以使用Vala的本机C库吗?

来自分类Dev

我可以使用QTimer实现多线程算法吗?

来自分类Dev

我可以使用C ++中的模板类来做到这一点吗

来自分类Dev

(如何)我可以使用C#.Net中的反射查询类“ post-build”吗?

来自分类Dev

我可以使用标准库在C中寻找超过2GB的位置吗?

来自分类Dev

(如何)我可以使用C#.Net中的反射查询类“ post-build”吗?

来自分类Dev

我可以使用#define在C中创建组或类似的组吗?

来自分类Dev

我可以强制C ++库使用单线程吗?

来自分类Dev

多线程可以在 C++ 中写入共享对象的不同变量吗

来自分类Dev

我如何在C中的多线程程序中将void指针转换为char数组

来自分类Dev

我可以在我的C程序中使用LXC库吗?

Related 相关文章

  1. 1

    在C ++中,可以使用多线程工具将UNIX信号与主程序同步吗?

  2. 2

    我可以在多线程C ++中安全地使用int吗?

  3. 3

    我可以使用C程序中的C ++模板库吗?

  4. 4

    我可以使用Xamarin在C#中开发Windows和Mac应用程序吗?

  5. 5

    C ++中的多线程数据同步

  6. 6

    使用pybind11将Python解释器嵌入到多线程C ++程序中

  7. 7

    我可以使用Mongo DB C#驱动程序序列化基类中的属性或字段吗?

  8. 8

    我可以使用Revo Uninstaller从驱动器D(不是C的分区)中删除程序吗?

  9. 9

    C:我可以使用libssh转发端口以供外部应用程序使用吗?

  10. 10

    我可以使用C / C ++编译器吗?

  11. 11

    我可以使用自动要求管理员权限的GCC编译C程序吗?

  12. 12

    我可以使用python读取Windows应用程序(c ++)的给定变量吗?

  13. 13

    我可以使用 C# 或 Powershell 添加/更新 CRM Dynamics 插件程序集吗?

  14. 14

    C:我可以使用C SDK知道pubnub订阅中的还原选项吗

  15. 15

    Qt日志记录工具多线程,使用可变数量的参数调用信号和插槽形成另一个线程,将C和C ++混合在一起

  16. 16

    多线程C程序中的随机函数

  17. 17

    在 c 中使用 POSIX 信号量的多线程

  18. 18

    C ++ 11程序可以使用BlueZ吗?

  19. 19

    我可以使用Vala的本机C库吗?

  20. 20

    我可以使用QTimer实现多线程算法吗?

  21. 21

    我可以使用C ++中的模板类来做到这一点吗

  22. 22

    (如何)我可以使用C#.Net中的反射查询类“ post-build”吗?

  23. 23

    我可以使用标准库在C中寻找超过2GB的位置吗?

  24. 24

    (如何)我可以使用C#.Net中的反射查询类“ post-build”吗?

  25. 25

    我可以使用#define在C中创建组或类似的组吗?

  26. 26

    我可以强制C ++库使用单线程吗?

  27. 27

    多线程可以在 C++ 中写入共享对象的不同变量吗

  28. 28

    我如何在C中的多线程程序中将void指针转换为char数组

  29. 29

    我可以在我的C程序中使用LXC库吗?

热门标签

归档