SafeCollectionIteration.java
上传用户:songled
上传日期:2022-07-14
资源大小:94k
文件大小:1k
源码类别:

进程与线程

开发平台:

Java

  1. import java.util.*;
  2. public class SafeCollectionIteration extends Object {
  3. public static void main(String[] args) {
  4. // To be safe, only keep a reference to the 
  5. // *synchronized* list so that you are sure 
  6. // that all accesses are controlled.
  7. // The collection *must* be synchronized 
  8. // (a List in this case).
  9. List wordList = 
  10. Collections.synchronizedList(new ArrayList());
  11. wordList.add("Iterators");
  12. wordList.add("require");
  13. wordList.add("special");
  14. wordList.add("handling");
  15. // All of this must be in a synchronized block to 
  16. // block other threads from modifying wordList while 
  17. // the iteration is in progress.
  18. synchronized ( wordList ) {
  19. Iterator iter = wordList.iterator();
  20. while ( iter.hasNext() ) {
  21. String s = (String) iter.next();
  22. System.out.println("found string: " + s + 
  23. ", length=" + s.length());
  24. }
  25. }
  26. }
  27. }