
多线程
SmilngCobra
To be an architect
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Java多线程系列-------多线程的风险问题
这篇文章,我想说明一下关于Java多线程中会遇到的几种风险以及它们的 概念1.死锁:死锁的含义是指一组线程在执行过程中竞争资源导致的一种阻塞的现象,其原因是其中的每一个线程都在等待仅由该组中其他线程才可以释放的资源,这样每个线程都在等待其他线程释放自己的资源,而本身并不会释放资源,导致双方都在互相等待中形成一种阻塞的现象。 2.饥饿:多线程中的饥饿,其意思是,线程的调度如果只...原创 2019-12-30 16:37:10 · 233 阅读 · 0 评论 -
Java多线程系列-------基础知识
我们已经开发了很多业务,但是从某种角度来看。我们的系统并不完善,我们在测试数据的时候,操作数据库的用户只有一个,那就是我们的主机。在这里我们可以把主机理解成一个线程,也就是说。某一时间只有一个线程操作了某条数据。对于一个大的电商网站,很显然在某一时刻不可能只有一个用户访问他们的数据库并进行相应的请求。那么我们应该怎样保证数据的安全性呢。这就是我们要对多线程的探究。先提出一个问题,关于文件的读写...原创 2018-08-04 12:58:55 · 191 阅读 · 0 评论 -
Java多线程系列-------一个简单的多线程示例
接下来我们就要正式讲解在java中怎么执行多线程了。首先我们知道关于java文件在jvm上运行,对象的建立,执行以及最后的回收都有jvm完成。具体的方法是什么呢。我们来打开Object类,发现一个方法 protected void finalize() throws Throwable { }这是一个专门用来回收对象内存的方法,我们可以重写这个方法。/** * 当垃圾收...原创 2018-08-04 15:06:35 · 2531 阅读 · 0 评论 -
Java多线程系列-------多线程的内存分析及多线程的另一种表达方式
首先在我分析多线程执行过程中的内存分配时,我想说明一下。当我们创建一个线程时,我们内存会问我们的线程分配一个栈,这个栈是线程私有的。换句话说,我们之前执行的main方法实际上是主线程的入口,当我们的jvm编译执行到这句话时,相当于告诉jvm可以开始主线程的执行了。那么我来讲解一下多线程的执行规则。 Demo d1 = new Demo("A");//创建之后线程就被创建了 Demo...原创 2018-08-09 11:20:24 · 195 阅读 · 0 评论 -
Java多线程系列-------同步函数和同步代码块
上次我们在卖票问题中,抛出了一个问题。当我们的四个窗口也就是四个线程同时开始售票时,就会出现对于共享资源的抢夺问题。关于共享资源的抢夺因为代码不是原子性出现了数值上的差错。那么怎么样来解决这个问题呢。现在我来讲解一下java中的一个关键字synchronized。 首先来解释一个这个关键字的含义,synchronized意思是同步。换句话说,关于synchronized修饰...原创 2018-08-13 19:39:29 · 1215 阅读 · 0 评论