A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 唐增友 中级黑马   /  2012-10-15 15:41  /  1117 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. import java.util.Vector;

  2. public class Theader {

  3.         /**
  4.          * @param args
  5.          */
  6.         public static void main(String[] args) {

  7.                 /*Runnable r =new Test();
  8.                 new Thread(r).start();
  9.                 new Thread(r).start();*/
  10.                
  11.                 Runnable r2 =new Test();
  12.                 new Thread(r2).start();
  13.                 new Thread(r2).start();
  14.         }

  15. }

  16. class Test2 implements  Runnable{
  17.         String s="123456789";
  18.         Vector<String> v=new Vector<String>();
  19.        
  20.         public Test2(){
  21.                 for(char c : s.toCharArray()){
  22.                         v.add(String.valueOf(c));
  23.                 }
  24.        
  25.         }
  26.        
  27.         @Override
  28.         public void run() {
  29.                         while(!v.isEmpty()){
  30.                                 System.out.println(Thread.currentThread().getName()+":"+v.get(0));
  31.                                 v.remove(0);
  32.                                
  33.                         }
  34.         }
  35.        
  36. }
复制代码
Thread-0:1
Thread-0:2
Thread-0:3
Thread-0:4
Thread-0:5
Thread-0:6
Thread-0:7
Thread-0:8
Thread-0:9
Thread-1:1
Exception in thread "Thread-1" java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
        at java.util.ArrayList.RangeCheck(ArrayList.java:547)
        at java.util.ArrayList.remove(ArrayList.java:387)
        at com.heimait.day20121015.Test.run(Theader2.java:22)
        at java.lang.Thread.run(Thread.java:619)

不是说 vector 线程安全吗?
vector 线程安全 怎么理解??

评分

参与人数 1技术分 +1 收起 理由
唐志兵 + 1 赞一个!

查看全部评分

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马