鉄則6: マルチスレッドプログラミングの「常識」を守ろう POSIXの標準関数のうち、非スレッドセーフであるものの一覧を把握し、使わないようにせよ 自作の関数はスレッドセーフにせよ 共有変数はロックして参照・更新せよ C++を使っているなら、関数を同期化する方法に注意せよ 説明: (1) POSIXの標準関数のうち、非スレッドセーフであるものの一覧を把握し、使わないようにせよ もしPOSIXプラットフォームでマルチスレッドのプログラミングを行うなら、いくらかの最低限の知識、つまり「常識」を知り、厳守する気持ちで望みましょう。 ...まずは、「スレッドセーフ」の意味を理解しましょう。スレッドセーフな関数とは、「複数のスレッドが同時に呼び出しても問題ない関数のこと」です。こういう関数は次のどちらかの性質を満たしています。 局所的静的変数(関数内のstatic変数)や非局所的静的変数(大域変数)
![UNIX上でのC++ソフトウェア設計の定石 (6) - memologue](https://cdn-ak-scissors.b.st-hatena.com/image/square/4f43f150d3046290fc50e13c44f8427870004656/height=288;version=1;width=512/https%3A%2F%2Fcdn-ak.d.st-hatena.com%2Fdiary%2Fyupo5656%2F2004-08-09.jpg)