Which One is optimal to choose ?
Syncronized hash map or Hash table with single thread model?
How can a hash map syncronized with out using syncrozed
blocks in programm?
Answer Posted / ranganathkini
The java.util.Hashtable provides a synchronized collection
implementation to store key-value pairs. Hence
synchronization of a Hashtable is not necessary.
Synchronization has a performance overhead and therfore must
be used with caution in only those situations where a
resource(s) is shared by multiple threads. Hence a
java.util.HashMap implementation can be used for single
threaded model and it can be externally synchronized if it
is to be used in a mult-threaded model.
To get a synchronized version of a java.util.HashMap without
using synchronized blocks, do this:
// make sure this is in imports
import java.util.*;
// our unsynchronized map object
Map myMap = new HashMap();
// get a synchronized map from our unsynchronized map
Map mySyncMap = Collections.synchronizedMap( myMap );
After this, all access to the map must be via mySyncMap
reference and NOT myMap.
Another way to acquire a synchronized map is:
Map mySyncMap = Collections.synchronizedMap( new HashMap() );
Is This Answer Correct ? | 5 Yes | 1 No |
Post New Answer View All Answers
Explain about anonymous inner classes ?
What is assembly used for?
What are benefits of java?
What is java string pool?
What is int argc char * argv?
Why are there no global variables in java?
What is the synonym of string?
What is the use of join method?
How many JVMs can run on a single machine and what is the Just-In-Time(JIT) compiler?
What is the latest version of java?
What is * argv?
Can we override tostring method in java?
Differentiate between == and equals().
Can It is possible to synchronize the constructor of a Java Class?
What is the meaning of variables in research?