摘要:
1、CountDownLatch用法 类似于计数器,比如某个任务需要等待另外N个任务执行完后再继续执行,就可以用CountDownLatch实现。 构造方法: //count为计数器值public CountDownLatch(int count) { if (count < 0) throw ne 阅读全文
摘要:
1、构造方法: ThreadPoolExecutor类提供了四个构造方法,前三个最后都调用最后一个参数最全的方法: public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUni 阅读全文
摘要:
一、所需资源 两台虚拟机:172.20.53.85,172.20.53.87。在两台机器上装上nginx+keepalived VIP:172.20.53.250 二、安装nginx 1.创建安装目录 mkdir -p /usr/soft 2.进入安装目录并下载nginx wget http://n 阅读全文
摘要:
死锁:当一个线程永远地持有一个锁,并且其他线程都尝试获得这个锁时,那么它们将永远被阻塞。比如,线程1已经持有了A锁并想要获得B锁的同时,线程2持有B锁并尝试获取A锁,那么这两个线程将永远地等待下去。 我们来看一个死锁的简单例子: 运行结果: 从运行结果可看到,线程1拿到了A锁,并尝试去获取B锁,与此 阅读全文
摘要:
1、jps————查看当前进程Java进程 2、kill -9 [进程号]————结束该进程 3、tail -f [文件名]————查看文件尾部内容(调试程序时可用来查看实时日志) 4、chmod -R [权限代号abc] 文件目录————遍历修改文件权限,r:4,,w:2,x:1,a|b|c=r+ 阅读全文
摘要:
下面是错误的写法: 当选中的行数大于1时,就会出现有几行数据删除不干净的情况,这是因为遍历的问题,因为在删除的过程中,id集合ids的下标会随着删除而变化,这个就类似于Java的List集合,当你删除一条数据时,下一条数据的下标会往前移,所以必须对遍历过程作一些修改。下面是正确的写法: 阅读全文
摘要:
设置主键自动生成UUID: 批量删除: 阅读全文
摘要:
根据在排序过程中涉及的存储器不同,可将排序方法分为两大类:内部排序和外部排序。 内部排序是指待排序列完全存放在内存中所进行的排序过程,适合不太大的元素序列。 外部排序指的是大文件的排序,待排序的文件无法一次装入内存,将待排序的记录存储再外存储器上,需要在内存和外部存储器之间进行多次数据交换,已达到排 阅读全文