aspose file tools
The moose likes Java in General and the fly likes Variable increment problem (threads) Big Moose Saloon
  Search | Java FAQ | Recent Topics
Register / Login
JavaRanch » Java Forums » Java » Java in General
Reply Bookmark "Variable increment problem (threads)" Watch "Variable increment problem (threads)" New topic
Author

Variable increment problem (threads)

Naveen Koneti
Greenhorn

Joined: Apr 27, 2007
Posts: 13
Hi All,

I have a problem in my project.Some thing like I will be spawning n number of threads.These threads have a increment two variables x and y.And these threads have to run infinitly each time incrementing and using those variables.After some time I am getting these variables being increments out of sync though i am incrementing them in a syncronized method.
ex: if I give initial variables as x = 100 and y =200.after running the program say after 5 min those variables are becoming something like 144 & 251 but I am expecting them to be 191 & 291.
my method is like this

static long x = 0;
static long y = 0;
public void run()
{
while(true)
{ increment();//increments the variables }
if(someCondition)
{ thread.yield(); return;//terminating execution }
}

static synchronized increment()
{
x++;
y++;
}
Ernest Friedman-Hill
author and iconoclast
Marshal

Joined: Jul 08, 2003
Posts: 24041
    
  13

They should appear to be in sync to any thread that reads them in a matching synchronized method or block.

Please don't post the same question in multiple forums. I'm going to move this one to the Threads forum and delete the other copy.


[Jess in Action][AskingGoodQuestions]
 
I agree. Here's the link: http://ej-technologies/jprofiler - if it wasn't for jprofiler, we would need to run our stuff on 16 servers instead of 3.
 
subject: Variable increment problem (threads)
 
Similar Threads
Threads again
Help with counter
Variable increment problem (threads)
static block understanding