使线程安全JList项目更改

时间:2013-05-08 02:14:06

标签: java swing nullpointerexception jlist

public void addUserMessaged(String user) {  
        model.addElement(user);
        manager.addUser(user);  
    }

我基本上都是想这样做。我已经尝试过synchronized和invokeLater,但它只是不起作用并抛出异常。我不知道为什么,我一整天都在阅读Java文档,而我正在尝试的东西将不起作用。

我是从另一个线程调用它,这就是我所说的:

gui.addUserMessaged(user);

gui在构造函数中通过引用传递,gui是实际的gui句柄。

只是想我添加它在主线程中调用它时工作正常,但如果我创建一个线程并从那里调用它会导致问题

如何更改线程安全JList项目?

例外:

Exception in thread "Thread-2" java.lang.NullPointerException
        at gui.gui.addUserMessaged(gui.java:189)
        at gui.worker.run(worker.java:81)
        at java.lang.Thread.run(Unknown Source)

感谢您的帮助!我发现了问题所在。我只是在加载时的条件下初始化一个变量,现在我只是一直初始化它。

0 个答案:

没有答案