ors ▁a ids ▁in ▁this ▁process ▁as ▁threads ▁can ▁address ▁any ▁memory ▁location ▁by ▁default . ▁ ▁There ▁are ▁two ▁situations ▁in ▁which ▁a ▁variable ▁can ▁be ▁described ▁as ▁" P riv at izable ": ▁ ▁The ▁first ▁situation ▁is ▁when ▁the ▁variable ▁is ▁( written ) ▁before ▁it ' s ▁being ▁( read ) ▁by ▁the ▁parallel ▁task ▁during ▁the ▁original ▁program ' s ▁sequ ential ▁order . ▁In ▁this ▁case , ▁if ▁the ▁task ▁wrote ▁to ▁its ▁( private ) ▁copy ▁rather ▁than ▁the ▁shared ▁one , ▁the ▁conflict / dependency ▁will ▁be ▁removed . ▁The ▁reason ▁for ▁this ▁is ▁that ▁the ▁program ' s ▁sequ ential ▁order ▁will ▁ens ures ▁that ▁the ▁value ▁read ▁by ▁the ▁task ▁will ▁be ▁the ▁one ▁written ▁by ▁the ▁same ▁task ; ▁removing ▁any ▁conflicts ▁that ▁might ▁occur ▁due ▁to ▁other ▁threads ▁accessing ▁the ▁same ▁variable . ▁This ▁is ▁more ▁explained ▁in ▁the ▁following ▁Example ▁ 1 . ▁ ▁In ▁the ▁second ▁situation , ▁the ▁read ▁happens ▁before ▁the ▁write ▁for ▁the ▁variable ▁within ▁the ▁parallel ▁task , ▁but ▁the ▁difference ▁here ▁is ▁that ▁the ▁value ▁the ▁parallel ▁task ▁is ▁trying ▁to ▁read ▁is ▁a ▁value ▁previously ▁know ▁from ▁the ▁program ▁execution . ▁T aking ▁this ▁note ▁into ▁consideration , ▁if ▁each ▁parallel ▁task ▁wrote ▁to ▁its ▁own ▁private ▁copy ▁of ▁the ▁variable , ▁any ▁conflicts ▁or ▁dependencies ▁will ▁be ▁solved ▁during ▁execution , ▁as ▁they ▁would ▁all ▁read ▁a ▁value ▁known ▁ahead ▁of ▁time ▁and ▁them ▁write ▁their ▁correct ▁values ▁on ▁their ▁own ▁copies