java.lang——包含一些Java语言的核心类,如String、Math、Integer、System和Thread,提供常用功能。java.net——包含执行与网络相关的操作的类和接口。java.io——包含能提供多种输入/输出功能的类。java.util——包含一些实用工具类,如定义系统特性 ...
分类:
其他好文 时间:
2020-07-05 19:19:13
阅读次数:
70
FutureTask<实体类> futureTask = new FutureTask<>(() -> { return 实体类;});new Thread(futureTask).start();for(;;){ if (futureTask.isDone()) { try { 实体类=futur ...
分类:
编程语言 时间:
2020-07-05 00:32:12
阅读次数:
106
线程(Thread)是并发编程的基础,也是程序执行的最小单元,它依托进程而存在。一个进程中可以包含多个线程,多线程可以共享一块内存空间和一组系统资源,因此线程之间的切换更加节省资源、更加轻量化,也因此被称为轻量级的进程。 线程的状态在 JDK 1.5 之后以枚举的方式被定义在 Thread 的源码中 ...
分类:
其他好文 时间:
2020-07-04 23:05:37
阅读次数:
87
Semaphore信号量原理 Semaphore是一个计数信号量,本质是"共享锁". Semaphore维护一个信号量许可集. 线程可以调用acquire()获得信号量的许可. 线程可以调用release()释放其持有的信号量. 使用acquire()请求获得信号量时,若信号量有可用的许可时,线程获 ...
分类:
其他好文 时间:
2020-07-04 18:45:22
阅读次数:
80
调用和回调机制 在一个应用系统中, 无论使用何种语言开发, 必然存在模块之间的调用, 调用的方式分为几种: 1.同步调用 同步调用是最基本并且最简单的一种调用方式, 类A的方法a()调用类B的方法b(), 一直等待b()方法执行完毕, a()方法继续往下走. 这种调用方式适用于方法b()执行时间不长 ...
分类:
编程语言 时间:
2020-07-04 15:35:20
阅读次数:
39
CountDownLatch的两个核心用法 1.一个线程等待多个线程执行完之后再去执行 2.多个线程等待一个线程执行完之后再去执行 public CountDownLatch(int count) { if (count < 0) throw new IllegalArgumentException ...
分类:
其他好文 时间:
2020-07-04 11:50:42
阅读次数:
61
先看一个例子: #include <numeric> #include <vector> #include <algorithm> #include <iterator> #include <thread> #include <iostream> #include <functional> usin ...
分类:
编程语言 时间:
2020-07-04 01:41:11
阅读次数:
74
https://www.jianshu.com/p/f70ee1765a61 如何判断当前线程是不是主线程 Looper.myLooper() == Looper.getMainLooper() Looper.getMainLooper().getThread() == Thread.current ...
分类:
其他好文 时间:
2020-07-03 21:16:52
阅读次数:
38
工作的时候遇到程序需要进行RSA加密解密的部分,在写第一版测试的时候,出现了:Exception in thread "main" javax.crypto.BadPaddingException: Data must start with zero at sun.security.rsa.RSAP ...
分类:
其他好文 时间:
2020-07-03 21:05:14
阅读次数:
76
1、使用Java提供的工具生成证书 路径不能是文件夹,否则会找不到出现说 java.lang.Exception: 密钥库文件存在, 但为空的情况 keytool -genkey -alias myKeyStore -keyalg RSA -keystore 'D:\work\keystore\ke ...
分类:
Web程序 时间:
2020-07-03 15:20:07
阅读次数:
96