上一页 1 2 3 4 5 6 ··· 16 下一页
摘要: 当代码没有完成时,可以加一个todo,下次写时idea会有提示 阅读全文
posted @ 2020-12-06 13:58 ToBeContinue得 阅读(212) 评论(0) 推荐(0) 编辑
摘要: 引用了数据源但没有配置url,需要禁止DataSource的加载创建 阅读全文
posted @ 2020-12-05 18:50 ToBeContinue得 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 1.常用词含义: watch:会持续收到该项目的动态 fork:复制某个项目到自己GitHub的仓库中 star:点赞 clone:将项目下载到本地 follow:关注感兴趣的作者,会收到他们的动态 2.in关键词: xxx关键词 in:name,description 阅读全文
posted @ 2020-11-16 10:23 ToBeContinue得 阅读(326) 评论(0) 推荐(0) 编辑
摘要: 1.对volatile的理解 2.对cas的理解 3.对JMM(内存模型)的理解 4.Unsafe类 5.ABA问题 6.集合类不安全并发 7.公平锁和非公平锁 8.可重入锁 阅读全文
posted @ 2020-10-14 21:35 ToBeContinue得 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 1. 使用date命令查看系统时区,如果不是CST,修改为CST 2. ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime 3. date -s "2020-01-01 23:59:59" //修改系统时间 4. hwclock -w // 阅读全文
posted @ 2020-09-22 11:16 ToBeContinue得 阅读(698) 评论(0) 推荐(0) 编辑
摘要: 1.修饰实例方法 作用于当前对象实例加锁,进入同步代码前要获得当前对象实例的锁 2.修饰静态方法 也就是给当前类加锁,会作用于类的所有对象实例,因为静态成员不属于任何一个实例对象,是类成员( static 表明这是该类的一个静态资源,不管new了多少个对象,只有一份)。所以如果一个线程 A 调用一个 阅读全文
posted @ 2020-09-21 15:49 ToBeContinue得 阅读(268) 评论(0) 推荐(0) 编辑
摘要: 1.两者最主要的区别在于:sleep 方法没有释放锁,而 wait 方法释放了锁; 2.两者都可以暂停线程的执行; 3.Wait 通常被用于线程间交互/通信,sleep 通常被用于暂停执行; 4.wait() 方法被调用后,线程不会自动苏醒,需要别的线程调用同一个对象上的 notify() 或者 n 阅读全文
posted @ 2020-09-14 10:35 ToBeContinue得 阅读(183) 评论(0) 推荐(0) 编辑
摘要: 1.产生死锁必须具备以下四个条件 互斥条件:该资源任意一个时刻只由一个线程占用; 请求与保持条件:一个进程因请求资源而阻塞时,对已获得的资源保持不放; 不剥夺条件:线程已获得的资源在末使用完之前不能被其他线程强行剥夺,只有自己使用完毕后才释放资源; 循环等待条件:若干进程之间形成一种头尾相接的循环等 阅读全文
posted @ 2020-09-14 10:33 ToBeContinue得 阅读(97) 评论(0) 推荐(0) 编辑
摘要: 1.初始状态 线程被构建,还没有调用start()方法 2.运行状态 3.阻塞状态 4.等待状态 5.超时等待 6.终止状态 阅读全文
posted @ 2020-09-14 10:06 ToBeContinue得 阅读(118) 评论(0) 推荐(0) 编辑
摘要: 1.尽可能使用局部变量 调用方法时传递的参数以及在调用中创建的临时变量都保存在栈中速度较快,其他变 量,如静态变量、实例变量等,都在堆中创建,速度较慢。另外,栈中创建的变量,随着方法的运行结束,这些内容就没了,不需要额外的垃圾回收。 2.尽量减少对变量的重复计算 for (int i = 0; i 阅读全文
posted @ 2020-09-11 17:29 ToBeContinue得 阅读(97) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 16 下一页