Win a copy of Design for the Mind this week in the Design forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Synchronization

 
Kannan BLR
Greenhorn
Posts: 10
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi All,

Please Any one help me what is Synchronization?
Why iam asking this one ? I got the answer from this question (diff. between Vector and Arraylist).

Vector is syncronized.
Arraylist is not syncronized.
 
Stan James
(instanceof Sidekick)
Ranch Hand
Posts: 8791
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi, welcome to the ranch!

Synchronization is used in multi-threaded programs to make sure that only one thread gets into a sensitive code block at a time. If I have code that might be run by two threads and it does something as simple as:

it is possible for another thread to change the value of memberVariable between the time I set it and the time I test it and the method might not print YES. If I make the method synchronized, the compiler adds code to guarantee that only one thread gets into this method at a time, and the method will always print YES.

This is a silly example, but real apps often have resources that are shared by many threads yet have to be modified by only one at a time.

See if Thinking in Java or this Sun Tutorial help you get into threading. The ranch has a forum just up the page all about threading if you want to take future questions there.
 
Ilja Preuss
author
Sheriff
Posts: 14112
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Moving to Threads and Synchronization...
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic