多线程共享协作

Java 

线程间的共享和协作线程间的共享线程开始运行,拥有自己的栈空间,就如同一个脚本一样,按照既定的代码一步一步地执行,直到终止。但是,每个运行中的线程,如果仅仅是孤立地运行,那么没有一点儿价值,或者说价值很少,如果多个线程能够相互配合完成工作,包括数据之间的共享,协同处理事情。这将会带来巨大的价值。Jav

多线程

Java 

基础概念CPU核心数和线程数的关系核心数、线程数:目前主流CPU有双核、三核和四核,六核。增加核心数目就是为了增加线程数,因为操作系统是通过线程来执行任务的,一般情况下它们是1:1对应关系,也就是说四核CPU一般拥有四个线程。

反射原理及动态代理模式

Java 

反射原理及动态代理模式静态代理例子:public interface Subject { abstract String saleTt();}public class RealSubject implements Subject { @Override public String

2. Flutter 中代码是如何执行和运行的


Dart 单线程单线程在流畅性方面有一定安全保障,这点在 JavaScript 中存在类似的机制原理,其核心是分为主线程、微任务和宏任务。主线程执行主业务逻辑,网络 I/O 、本地文件 I/O 、异步事件等相关任务事件,应用事件驱动方式来执行。在 Dart 中同样是单线程执行,其次也包含了两个事件队

斐波那契数列


斐波那契数列思路如果直接递归计算,会存在大量重复计算,不合适。故弄一个数组记录中间的结果。基础情况直接返回定义初始化一个dp表设置终止的情况 n=0, n=1挨个计算 f(n)=f(n-1)+f(n-2)返回最后结果 dp[n]代码class Solution { public int fib

两个栈实现队列


题目:用两个栈实现队列思路和算法维护两个栈,第一个栈支持插入操作,第二个栈支持删除操作。根据栈先进后出的特性,我们每次往第一个栈里插入元素后,第一个栈的底部元素是最后插入的元素,第一个栈的顶部元素是下一个待删除的元素。为了维护队列先进先出的特性,我们引入第二个栈,用第二个栈维护待删除的元素,在执行删

Java中的泛型

Java 

为什么我们需要泛型?通过两段代码我们就可以知道为何我们需要泛型

Jenkins安装配置


Docker环境下的安装下载Jenkins的Docker镜像:sudo docker pull jenkins/jenkins:lts在Docker容器中运行Jenkins:sudo docker run -p 8080:8080 -p 50000:5000 --name jenkins \-u r

Linux磁盘操作


查看分区使用情况df -h查看目录使用情况du -h --max-depth=1查看分区情况fdisk -l挂载分区-t ext4 可选,可以自动识别文件系统sudo mount -t ext4 /dev/sda1 /disk1取消挂载sudo umount /dev/sda1格式化分区需先取消挂

使用Maven插件为SpringBoot应用构建Docker镜像


Docker RegistryDocker Registry 2.0搭建sudo docker pull registry:2sudo docker run -d -p 5000:5000 --restart=always --name registry2 registry:2Docker开启远程A