View Single Post
Old Mar 31st, 2008, 1:13 AM   #3
victor louis
Newbie
 
Join Date: Mar 2008
Posts: 2
Rep Power: 0 victor louis is on a distinguished road
Coverity Prevent- source code analysis tool for debugging software defects

Hi
In you situation ,a race condition has occurred due to a lack of synchronization or the improper use of synchronization when accessing shared resources such as variables. Data races occur when the developer fails to specify which thread has access to a variable at a given time. In such a case, whichever thread wins the race gets access to the data, with unpredictable results.
Because threads can be preempted at any time, you can't safely assume that a thread executing at start-up will have accessed the data it needs before other threads begin to run. As well, the order in which threads are executed may differ from one VM to the next, making it impossible to determine a standard succession of events.
Sometimes, data races may be insignificant in the outcome of the program, but more often than not they can lead to unexpected results that are hard to debug. In short, data races are concurrency problems waiting to rear their ugly heads.

Last edited by Narue; Apr 22nd, 2008 at 6:59 AM. Reason: Snipped ad.
victor louis is offline   Reply With Quote