我已经分类AbstractTableModel
用作我的模型JTable
。每当添加数据时,我都会fireTableRowsInserted()
在 AWT 线程中调用。通过使用同步方法,对我的底层容器的所有访问都是线程安全的。
到目前为止,这种模式对我来说效果很好。但是现在我想从列表中删除数据,我意识到我有一个线程问题。如果我删除一行并fireTableRowsDeleted()
在 AWT 线程中调用,我仍然可以调用getValueAt()
一个现在不再存在的行索引。
在 AWT 线程之外对表模型执行操作的最佳实践是什么?