swing jtextpane多监听问题

问题是这样的,现在实现的是监听jtextpane中的文本关键字着色和文本的撤销、恢复,分别是
getDocument().addDocumentListener()
getDocument().addUndoableEditListener(undomg)
这两个监听同一个组件,也就是jtextpane,着色监听正常,但是撤销和删除就会有卡顿,而且卡顿十分明显;尝试了多线程,没搞明白,有没有什么别的高招,大神来。

用多线程应该无济于事。你是否加载了多次事件处理函数,你的着色代码是否没有优化。

着色代码就是正常的着色监听,里面有run方法用于着色。我对一个jtextpane添加了键盘监听,内容监听和编辑监听,是不是冲突了