前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站点击跳转浏览。
servlet 是单例。如何证明: 构造函数植被执行一次。
单例 线程不安全。为什么?
因为 当多线程时, 会共享一个全局变量。
(当2个浏览器访问时, 虽然各自次数加1,但是没有及时刷新到缓存里,依旧会显示最终的结果为1.)
如何解决:
加syn锁。 所以效率会变低
servlet有线程安全问题,尽量不要定义servlet的类成员变量,会出现线程安全问题
为什么单例对象有线程问题还用呢
因为多例对象会创建多次,执行效率没有单例对象快
而且单例的线程问题可以通过把变量定义在方法中来进行解决