964 バイト追加,
2023年5月19日 (金) 05:05 コピーオンライト(Copy On Write、通称:COW)とは、[[プログラミング]]において、ある[[変数]]のコピーを作成するとき、すぐにコピーを作成せず、コピー先に変更(ライト)を加えようとした直前にコピーを行う実装のことをいいます。
コピーオンライトを使用することで「コピーしたけど、やっぱり使わなかった」という無駄を省けます。
一方で[[マルチスレッド]]環境下では[[バグ]]の温床になる[[諸刃の剣]]であり、マルチスレッドに頼る可能性があるならばこの技法は使ってはいけないと言われています。マルチスレッド環境下では変数の[[排他制御]]とコピーオンライトを同時に正常に行えない可能性があります。これと似たようなものとしては[[Java]]の[[ダブルチェックロッキング]]の問題があります。
<br />