标签:java concurrency
Summary:Synchronized and Unsynchronized Collections, Propertiesusing the following methods of the Collections class:
public static Collection synchronizedCollection(Collection c) public static Set synchronizedSet(Set s) public static List synchronizedList(List list) public static Map synchronizedMap(Map m) public static SortedSet synchronizedSortedSet(SortedSet s) public static SortedMap synchronizedSortedMap(SortedMap m)-For example, the following shows how to create a threadsafe List
List list = new ArrayList(); List syncList = Collections.synchronizedList(list);-This is important, so remember this! Although synchronized collections are threadsafe, the Iterator s returned from them are not.
synchronized(syncList) { Iterator iterator = syncList.iterator(); // do stuff with the iterator here }-The java.util.concurrent.ConcurrentHashMap class is part of the concurrency utilities package and provides a Map that performs well under multithreaded access.
-You can use the Collections class to create read-only versions of any collection
public static Collection unmodifiableCollection(Collection c) public static Set unmodifiableSet(Set s) public static List unmodifiableList(List list) public static Map unmodifiableMap(Map m) public static SortedSet unmodifiableSortedSet(SortedSet s) public static SortedMap unmodifiableSortedMap(SortedMap m)
-Any string values can be stored as key/value pairs in a Properties table. However, the convention is to use a dot-separated naming hierarchy to group property names into
logical structures.
Properties props = new Properties(); props.setProperty("myApp.xsize", "52"); props.setProperty("myApp.ysize", "79");
String xsize = props.getProperty( "myApp.xsize" );
props.save( System.out, "Application Parameters" );
FileInputStream fin; ... Properties props = new Properties() props.load( fin );
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd" > <properties> <comment>My Properties</comment> <entry key="myApp.ysize">79</entry> <entry key="myApp.xsize">52</entry> </properties>
Next:The Preference API
标签:java concurrency
原文地址:http://blog.csdn.net/yu444/article/details/45439201