在多线程情况下使用单例类,并确保线程安全! (最佳实践和最佳性能)

我需要一个项目解决方案。 我有一个使用Java套接字发送和接收消息的库。我知道这不是线程安全的。 我使用称为xxx的方法创建了单例类(B)。在此方法中,我调用库的send方法。库还有另一种称为接收的方法。然后,我调用库的接收方法并获得响应。当我在多线程模式下使用它时,请求和响应不正确匹配。 我知道我可以对我的xxx方法使用sync,以使其线程安全。但是我正在寻找一种最佳实践和最佳性能的解决方案。 我想我应该有另一个模块来匹配请求和响应,而不必为xxx方法使用synced关键字。 我渴望阅读您的建议。 谢谢。

wlong20008 回答:在多线程情况下使用单例类,并确保线程安全! (最佳实践和最佳性能)

public enum B {
    INSTANCE;

    //xxx method.
}

您可以通过仅具有一个实例的枚举来定义单例类,这将是线程安全的。

本文链接:https://www.f2er.com/3129960.html

大家都在问