【发布时间】:2016-10-07 07:51:38
【问题描述】:
在我的应用程序中,我们使用事件管理来发布事件,并且同时触发了多个事件。这些由事件处理程序处理。在事件处理程序中声明了一些私有变量,并在handleEvent() 方法中使用。
它会导致任何线程安全问题吗?在事件处理程序线程安全中将变量声明为私有?
【问题讨论】:
标签: osgi
在我的应用程序中,我们使用事件管理来发布事件,并且同时触发了多个事件。这些由事件处理程序处理。在事件处理程序中声明了一些私有变量,并在handleEvent() 方法中使用。
它会导致任何线程安全问题吗?在事件处理程序线程安全中将变量声明为私有?
【问题讨论】:
标签: osgi
您的事件处理程序可以同时在不同的线程上调用。因此,您必须确保安全地处理对任何字段的访问。
将变量声明为私有与线程安全完全无关。重要的不是访问状态,重要的是同时访问。
您可以使用 synchronized 关键字、锁或无锁结构来控制访问。
【讨论】: