. ▁This ▁case ▁is ▁more ▁explained ▁in ▁the ▁following ▁Example ▁ 2 . ▁ ▁Due ▁to ▁the ▁fact ▁that ▁read / write ▁conflic ting ▁variables ▁are ▁the ▁only ▁reason ▁to ▁hold ▁parallel ization , ▁there ▁is ▁no ▁actual ▁need ▁to ▁declare ▁( read - only ) ▁and ▁( read / write ▁non - conf lic ting ) ▁variables ▁as ▁private . ▁However , ▁doing ▁so , ▁won ' t ▁affect ▁the ▁correct ness ▁of ▁the ▁program , ▁but ▁will ▁add ▁unnecessary ▁memory ▁overhead . ▁ ▁C ases ▁where ▁Priv at ization ▁and ▁Red u ction ▁doesn ' t ▁apply ▁▁ ▁There ▁are ▁cases ▁when ▁a ▁certain ▁variable ▁can ' t ▁be ▁priv at ized ▁nor ▁reduced ▁to ▁remove ▁the ▁read / write ▁conflict . ▁In ▁these ▁cases , ▁the ▁read / write ▁conflic ting ▁variable ▁need ▁to ▁be ▁updated ▁by ▁different ▁tasks ▁at ▁different ▁points ▁of ▁time . ▁An ▁example ▁of ▁this ▁case ▁is ▁explained ▁in ▁Example ▁ 3 . ▁ ▁One ▁way ▁to ▁solve ▁this ▁problem , ▁is ▁changing ▁the ▁scope ▁of ▁parallel ism ▁to ▁explore ▁a ▁different ▁parallel ▁region . ▁This ▁technique ▁might ▁produce ▁good ▁results , ▁as ▁it ' s ▁often ▁that ▁after ▁re anal yz ing ▁the ▁code , ▁some ▁read / write ▁conflic ting ▁variables ▁may ▁change ▁to ▁read / write ▁non - conf lic ting . ▁If ▁the ▁variable ▁still ▁causes ▁conflicts ▁among ▁different ▁threads , ▁the ▁last ▁resort ▁will ▁be ▁declaring ▁it ▁as ▁shared ▁and ▁protect ing ▁its ▁access ▁by ▁the ▁critical ▁section , ▁and ▁providing