hayateasdf's blog

Unity,C#, javascript,C++,python,batなど

スレッドセーフ

マルチスレッド環境で、ライブラリやプログラム、クラスなどが複数のスレッドから同時に利用されても正常に動作すること。

 

マルチスレッド環境では1つのデータや手続きを同時に複数のスレッドが利用することがある。このとき、一方のスレッドがあるデータを操作したことで他のスレッドが利用するデータが破壊されてしまったり、同じ手続きを同時に複数のスレッドが呼び出したことで予期しない結果が生じないよう、対策を講じる必要がある。

 

こうした環境を想定して正常に動作するよう設計されていることをスレッドセーフであるという。

 

実際には、マルチスレッドによる影響は多岐にわたるため、スレッドセーフの条件も様々なものがある。単純に「スレッドセーフか否か」を定義できるものではなく、段階的あるいは状況依存的にならざるを得ない。

 

http://e-words.jp/w/E382B9E383ACE38383E38389E382BBE383BCE38395.html