Thread.ident
をスレッドの一意の識別子として信じていましたが、現在threading.current_thread().ident
で同じスレッド識別子を報告している異なるワーカープロセスがmultiprocessing.poo.Pool
にあります。どうやって?マルチプロセッシングプールワーカーのスレッド識別子
0
A
答えて
1
プラットフォームによっては、IDが一意であってもなくてもよい。ここで重要なのは、Pythonマルチプロセッシングライブラリは実際にはマルチスレッドのためにスレッドの代わりにプロセスを使用するため、プロセス間のスレッドIDは実際にはプラットフォーム固有の実装の詳細であるということです。
Unix/Linuxの場合:スレッドIDは、単一プロセス内で一意であることが保証されています。ただし、スレッドIDはプロセス間で一意であるとは限りません。ただし、processid(pid)はプロセス間でユニークになります。したがって、2つをまとめて一意の識別子を得ることができます。 Windows上でman pthread
ページhttp://man7.org/linux/man-pages/man7/pthreads.7.html
から詳細:スレッドIDは、マシン全体にわたって一意である:https://msdn.microsoft.com/en-us/library/windows/desktop/ms686746(v=vs.85).aspx
関連する問題
- 1. pthreadsスレッドのユニークで一定の識別子?
- 2. Java 1.4でスレッドの一意の識別子を取得
- 3. リソース識別子
- 4. 識別子は
- 5. 識別子が
- 6. 識別子が
- 7. バンドル識別子
- 8. iOSの - 識別子
- 9. 識別子 - JavaScriptの
- 10. 「のgetaddrinfo」:識別子
- 11. TSQL:パラメータとしてキャストされた識別子の識別子
- 12. 失われたDisqusスレッド識別子を見つけるには?
- 13. ASP.NETセッション識別子
- 14. マルチパート識別子は
- 15. NHibernate.AssertionFailure:ヌル識別子
- 16. MessageDrivenBeanインスタンス識別子
- 17. カスタム識別子ジェネレータ
- 18. C++ Warning--識別子「}」
- 19. マルチバイト識別子リスト
- 20. アプリケーションエンジンアプリケーション識別子エイリアス
- 21. .Net/CLR識別子
- 22. Antlr4は識別子
- 23. Canbus 2.0b識別子
- 24. スレッド「main」の例外の識別java.lang.StackOverflowError
- 25. 識別子が識別子ではない場合、識別子は見つかりませんでしたか?
- 26. ecoinventのEcospold識別子3.2
- 27. .NETのユニバーサルコメント識別子
- 28. Neo4jデータベースインスタンスの識別子
- 29. iOSの8識別子
- 30. セマンティックモデル内の識別子
は、スレッドIDは、プロセスごとに一意であることを文書化しますか? – Reith
@ 0x2c52私はそれを少し調べなければなりませんでした。そうすることで、私は答えを明確にします。 Windowsスレッドはマシン全体で一意でなければなりませんが、Linuxスレッドはプロセス内で一意になるはずです。 man pthreads:http://man7.org/linux/man-pages/man7/pthreads.7.html - "スレッドIDはプロセス内でのみユニークであることが保証されています( スレッドを受け入れるすべてのpthreads関数IDは引数として というIDは、呼び出し元の と同じプロセス内のスレッドを指します)。 "Windows:https://msdn.microsoft.com/en-us/library/windows/desktop/ms686746(v = vs.85).aspx –