Implementiert eine C-Bibliothek C11-Threads für GNU/Linux?

Implementiert eine C-Bibliothek C11-Threads für GNU/Linux?


Es gab viele von Fragen zu C11 und C11-Threading, aber ich sehe nirgendwo eine endgültige Antwort:


Gibt irgendwelche C-Bibliothek implementiert die C11-Threading-Schnittstelle, die auf GNU/Linux-ähnlich verwendet werden kann? Geben Sie beispielsweise den "optionalen" <threads.h> an und die Thread-Unterstützungsbibliothek wie thrd_create() , aus dem C11-Standard in der Nähe von p. 376.


Idealerweise würde ich gerne eine Bibliothek finden, die allgemein, Open Source oder kostenlos ist, für allgemeine/generische/Multi-Architektur (z. B. GNU/Linux, x86_64 oder portabel).


Einige der hilfreicheren und relevanteren SO-Links:



  • dieser und dieser auf glibc;

  • dieser, der über den Standard spricht;

  • dieser über clang;

  • dieses über C11 im Allgemeinen und dieses über Windows und andere Plattformen;

  • viel mehr über C++11 Threading, aber ich interessiere mich nur für C11.


Einige Nicht-Starter-Optionen für Bibliotheken:



  • glibc Bibliothek nicht; seit 2012 gibt es einen offenen Fehler; es gab einen GSoC-Vorschlag, der aber anscheinend nicht angenommen wurde;

  • LLVM/Clang-Projekt hat keine C-Bibliothek;

  • Musl-Bibliothek nicht; – jetzt tut es! Siehe Bearbeiten unten und Antwort.

  • Die Newlib-Bibliothek unterstützt Threading (docs), aber nicht die Verwendung von pthread noch C11-Threads;

  • uClibc nicht;

  • diese Vergleichstabelle, die zweifelhaft ist (z. B. sehe ich in Musl-Quellen keine Beweise für die Unterstützung von lokalem C11-Thread-Speicher);

  • Einige verschiedene Posts über BSD,

  • Pelles, das geschlossen und nur für Windows angezeigt wird.


Ich bin nicht interessiert an POSIX-Threads (viele gute Optionen), Windows, einer IDE, noch C++11 (ich weiß, dass GNU libstdc++ und LLVM/Clang libc++ Geben Sie std::thread von C++11 an , die -pthread verwendet )


Danke!



(erneut) bearbeiten:Frage neu geöffnet, also migrierter Inhalt, um zu antworten, um ihn zu bereinigen.


Antworten:


musl implementiert jetzt (seit September 2014) C11-Threads!


Laut diesem kürzlich veröffentlichten Post auf der musl-Mailingliste und anderen Gesprächen auf dieser Liste vom Juli bis September 2014 scheint die musl-Bibliothek jetzt (Stand 07.09.2014) die C11-Threads-Schnittstelle zu implementieren, obwohl die Vergleichstabelle; spiegelt dies zum jetzigen Zeitpunkt nicht wider.


Da diese Frage erneut geöffnet wird, habe ich diesen Inhalt in eine richtige Antwort verschoben.