想要实现线程可以继承Thread也可以实现接口runnable,在类中重写 run()方法在主函数调用start方法就可以开辟线程。 对于java对象都有一个wait()和notify()、notifyAll()方法这是线程对这个对象资源的使用顺序的调和,在调用这些方法钱必须先使用同步锁synchr ...
分类:
编程语言 时间:
2016-11-12 13:36:20
阅读次数:
147
synchronized是Java中的关键字,是一种同步锁。它修饰的对象有以下几种: 1. 修饰一个代码块,被修饰的代码块称为同步语句块,其作用的范围是大括号{}括起来的代码,作用的对象是调用这个代码块的对象; 2. 修饰一个方法,被修饰的方法称为同步方法,其作用的范围是整个方法,作用的对象是调用这 ...
分类:
编程语言 时间:
2016-11-08 01:21:56
阅读次数:
322
面试题: 子线程循环10次,接着主线程循环100次,接着又回到子线程循环10次,接着又 主线程循环100次,如此循环50次,请写出程序 要用到共同数据(包括同步锁)或共同算法的若干个方法应该归在同一个类身上,这种设计正好提现了高类聚和程序的健壮性。 ...
分类:
编程语言 时间:
2016-11-04 07:41:14
阅读次数:
181
遇到问题:晚10点,DBA在数据库建立了某collection的索引。在之后的几分钟,恰巧有同事访问某应用,验证该应用的账号需从数据库某表查询账号密码。导致了无法查询,同事无法登录上应用。问题便反馈到了运维部。背景介绍:Mongodb版本3.0.2建索引和collection和账号查询collecti..
分类:
数据库 时间:
2016-11-03 19:18:19
阅读次数:
162
这篇文章讲了 1.同步异步概念(消去很多疑惑),同步就是一件事一件事的做;sychronized就是保证线程一个一个的执行。 2.我们需要明白,锁机制有两个层面,一种是代码层次上的,如Java中的同步锁,典型的就是同步关键字synchronized ( 线 程级别的)。另一个就是数据库层次上的,比较 ...
分类:
数据库 时间:
2016-11-03 18:24:30
阅读次数:
263
运行期间有且仅有一个实例。(比较耗系统性能的时候用单例模式) 关键点:1,一个类只有一个实例,只提供私有的构造器2,它必须自行创建这个实例,定义了静态的该类的私有对象3,它必须自行向整个系统提供这个实例,提供了一个静态的public方法 (返回创建或获取本身的静态私有对象) 懒汉模式:(1,加同步锁 ...
分类:
其他好文 时间:
2016-11-02 23:37:07
阅读次数:
162
为何要使用同步? java允许多线程并发控制,当多个线程同时操作一个可共享的资源变量时(如数据的增删改查), 将会导致数据不准确,相互之间产生冲突,因此加入同步锁以避免在该线程没有完成操作之前,被其他线程的调用, 从而保证了该变量的唯一性和准确性。 1.同步方法 即有synchronized关键字修 ...
分类:
编程语言 时间:
2016-09-26 14:42:22
阅读次数:
157
protected static object MObjLock = new object();//同步锁 public string GetData(int mId) { Monitor.Enter(MObjLock);//lock string data = string.Empty; ... ...
转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/5827547.html 解决并行冲突最有效的方法就是加同步锁,主要有以下几种方法: 1:动态方法同步锁:锁当前对象。即调用该方法的类对象优先执行完毕才到下一个任务。 public synchronized voi ...
分类:
编程语言 时间:
2016-08-31 22:09:25
阅读次数:
202
方法一:动态同步锁 动态同步锁适用于Runnable类中不适用与Thread类,因为其锁的对象为当前实例对象,一个Thread类只能跑一条线程,每条线程是不同的对象,所以同步锁将不起作用。 方法二:静态同步锁 静态同步锁可以用于Thread类,因为静态方法在内存中只有一个实例,不会随着new新的对象 ...
分类:
编程语言 时间:
2016-08-19 14:47:58
阅读次数:
1476