【问题标题】:Are Posix compliant pthread_mutex_t's from different libraries compatible with each other?来自不同库的符合 Posix 的 pthread_mutex_t 是否相互兼容?
【发布时间】:2017-08-04 18:43:08
【问题描述】:

我知道 pthread_mutex_t 的实现有很多,但是,我想知道标准是否足够具体,可以在不同的 pthread 库之间共享 pthread_mutex_t 并使其正常工作。

【问题讨论】:

    标签: pthreads posix mutex


    【解决方案1】:

    不,只有在他们协调兼容性的情况下,我认为没有人这样做。

    即使对于一个 C 实现也可能发生这种情况:glibc 跨版本与自身不兼容,并且类型的 32 位和 64 位版本的布局不同。现有二进制文件及其静态初始化程序(PTHREAD_MUTEX_INITIALIZER 及其变体)必须继续工作,但在运行时发生的情况并不固定,并且可能会因错误修复和优化而改变。另一方面,不幸的是,静态初始化程序的兼容性要求很难修复 32 位/64 位差异。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-04-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-03
      • 1970-01-01
      相关资源
      最近更新 更多