202108-06 Java并发编程之工具类Semaphore的使用 一、Semaphore的理解Semaphore属于java.util.concurrent包;Semaphore翻译成字面意思为信号量,Semaphore可以控制同时访问的线程个数,通过acquire()获取一个许可,如果没有就等待,而release()释放一个许可。二、Semaphore类中常用方法publicvoidacquire()用来获取一个许可,若无许可能够获得,则会一直等待,直到获得许可。publicvoidacquire(intpermits)获取permits个许可。publicvoidrelease()... 继续阅读 >
202108-06 Java并发工具类Exchanger的相关知识总结 一、Exchanger的理解Exchanger属于java.util.concurrent包;Exchanger是JDK1.5开始提供的一个用于两个工作线程之间交换数据的封装工具类;一个线程在完成一定的事务后想与另一个线程交换数据,则第一个先拿出数据的线程会一直等待第二个线程,直到第二个线程拿着数据到来时才能彼此交换对应数据。二、Exchanger类中常用方法publicExchanger()无参构造方法。表示创建一个新的交换器。publicVexchange(V... 继续阅读 >
202107-08 Java常用工具类总结 目录一、线程协作、控制并发流程的工具类二、CountDownLatch倒计时门闩三、Semaphore信号量四、Condition接口(又称条件对象)五、CyclicBarrier和CountDownLatch的区别一、线程协作、控制并发流程的工具类 什么是控制并发流程?控制并发流程的工具类,作用就是帮助我们程序员更容易得让线程之间合作让线程之间相互配合,来满足业务逻辑比如让线程A等待线程B执行完毕后再执行等合作策略二、CountDownLatch倒计时门闩倒数门:... 继续阅读 >
202104-27 Java常用工具类汇总 附示例代码 一、FileUtilsprivatestaticvoidfileUtilsTest(){try{//读取文件内容StringreadFileToString=FileUtils.readFileToString(newFile("D:\\guor\\data\\test20211022000000.txt"));System.out.println(readFileToString);//删除文件夹FileUtils.deleteDirectory(newFile("D:\\guor1\\data1"));FileUtils.deleteQuietly(newFile("D:\\guor\\data"));//清空文... 继续阅读 >
202010-10 java身份证合法性校验工具类实例代码 1.身份证规则计算方法(来源百度)将前面的身份证号码17位数分别乘以不同的系数。从第一位到第十七位的系数分别为:7-9-10-5-8-4-2-1-6-3-7-9-10-5-8-4-2。将这17位数字和系数相乘的结果相加。用加出来和除以11,看余数是多少?余数只可能有0-1-2-3-4-5-6-7-8-9-10这11个数字。其分别对应的最后一位身份证的号码为1-0-X-9-8-7-6-5-4-3-2。(即余数0对应1,余数1对应0,余数2对应X…)... 继续阅读 >