既然是多线程的直接用Vector好了,Vector是线程安全的。

解决方案 »

  1.   

    你用错了,他的这个方法同步是对你当前对象的同步,也就是你每个线程都是一个单独的对象,所以你的同步根本没有作用,除非你同步的是同一个对象才行。比如你把写的方法在server类里实现就可以。
      

  2.   


    fastmask(我心烦),你说的“他的这个方法同步是对你当前对象的同步”
    这句是什么意思?我不明白?????我又换了一种方式:在Server中定义了ArrayList Users
    然后在线程中对Server中的Users使用:
    synchronized(Server.Users)
    {
    Server.Users.add(...)
    }可是还不行?
    你说:你把写的方法在server类里实现就可以
    可是我的write是必须要在Thread中使用的呀
      

  3.   

    有一个简单的方法,把synchronized(_server.Users)写在write()方法的第一句.