摘要: 一. 单例设计模式之前在谈论的时候,有一部分涉及线程的问题,因此只讲述了一半。现在将其重新描述一下。 单例分为两种表现形式,懒汉和饿汉。 二. 多线程下的单例:饿汉式 懒汉式(延迟加载单例设计模式) 什么时候用到这个对象,再加载它。这个例子并不准备运行,知道就可以。 现在准备将其结合到多线程基础上来 阅读全文
posted @ 2017-12-15 21:02 前锋营 阅读(196) 评论(0) 推荐(0) 编辑
摘要: 一. 接下来更加深入地讲解一下,示例还是卖票,但是程序稍作了修改。 也就是调用的同步函数有多个修饰符,有了static的存在。 由于show函数是静态的,访问的num,那么num也要修改为静态的变量。其实num静不静态都一样,都是共享数据。 在加了两个静态修饰符后,再次编译运行一下程序。 DOS结果 阅读全文
posted @ 2017-12-15 11:03 前锋营 阅读(333) 评论(0) 推荐(0) 编辑
摘要: 一. 至于同步函数用的是哪个锁,我们可以验证一下,借助原先卖票的例子 对于程序中的num,从100改为400,DOS的结果显示的始终都是0线程,票号最小都是1。 票号是没有问题的,因为同步了。 有人针对只出现0线程,说是票数太少,0线程都给操作完了。即使改成四万张票,也是0线程操作。 正常来说,四个 阅读全文
posted @ 2017-12-15 09:22 前锋营 阅读(327) 评论(0) 推荐(0) 编辑