Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/344.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何限制ui事件记录:适当的数据结构和/或方法_Java_Logging - Fatal编程技术网

Java 如何限制ui事件记录:适当的数据结构和/或方法

Java 如何限制ui事件记录:适当的数据结构和/或方法,java,logging,Java,Logging,我创建了一个类,该类扩展了EventQueue,并提供了自己的dispatchEvent()实现。该类的目的是记录整个应用程序中发生的特定类型的AWTEvents 对问题的零,让我们考虑窗口事件: 我面临的问题是,特别是关于窗口大小调整和移动事件,我希望限制事件,以便每300ms只记录一个事件。其他299次,我希望为特定窗口增加一个计数器,然后在下一个300ms通过时包括该计数器 当我实现了一个解决方案时:在第一次迭代中,我有一个映射,其中事件ID作为键,然后是最后一个事件的时间戳。代码会根据它

我创建了一个类,该类扩展了
EventQueue
,并提供了自己的
dispatchEvent(
)实现。该类的目的是记录整个应用程序中发生的特定类型的
AWTEvents

对问题的零,让我们考虑窗口事件: 我面临的问题是,特别是关于窗口大小调整和移动事件,我希望限制事件,以便每300ms只记录一个事件。其他299次,我希望为特定窗口增加一个计数器,然后在下一个300ms通过时包括该计数器

当我实现了一个解决方案时:在第一次迭代中,我有一个
映射
,其中
事件ID
作为键,然后是最后一个事件的时间戳。代码会根据它对当前时间戳和日志进行简单计算……但是,当您开始引入不同的窗口和co时,它会变得更加复杂因为我不希望数据结构对几小时/几天前创建的对象进行哈希运算(是的,系统将保持这么长时间)

到目前为止,我认为最简单的方法是使用一个计时器线程自动清除旧的散列。有没有其他想法或数据结构可以帮助解决这个问题?

你的问题不清楚(至少对我来说)!!