并发编程
辣椒全栈攻城狮
展开
-
Java中的线程池
大家用jdbc操作过数据库应该知道,操作数据库需要和数据库建立连接,拿到连接之后才能操作数据库,用完之后销毁。数据库连接的创建和销毁其实是比较耗时的,真正和业务相关的操作耗时是比较短的。每个数据库操作之前都需要创建连接,为了提升系统性能,后来出现了数据库连接池,系统启动的时候,先创建很多连接放在池子里面,使用的时候,直接从连接池中获取一个,使用完毕之后返回到池子里面,继续给其他需要者使用,这其中就省去创建连接的时间,从而提升了系统整体的性能。原创 2024-10-09 15:48:11 · 374 阅读 · 0 评论 -
线程的基本操作
创建线程的2中方式:继承Thread类;实现Runnable接口启动线程:调用线程的start()方法终止线程:调用线程的stop()方法,方法已过时,建议不要使用线程中断相关的方法:调用线程实例interrupt()方法将中断标志置为true;使用线程实例方法isInterrupted()获取中断标志;调用Thread的静态方法interrupted()获取线程是否被中断,此方法调用之后会清除中断标志(将中断标志置为false了)原创 2024-10-09 15:38:33 · 417 阅读 · 0 评论 -
深入理解进程和线程
先到的人锁上门,后到的人看到上锁,就在门口排队,等锁打开再进去。我们经常使用windows系统,经常会看见.exe后缀的文件,双击这个.exe文件的时候,这个文件中的指令就会被系统加载,那么我们就能得到一个关于这个.exe程序的进程。线程是轻量级的进程,是程序执行的最小单元,使用多线程而不是多进程去进行并发程序的设计,是因为线程间的切换和调度的成本远远小于进程。线程是轻量级的进程,是程序执行的最小单元,使用多线程而不是多进程去进行并发程序的设计,是因为线程间的切换和调度的成本远远小于进程。原创 2024-10-09 15:28:53 · 440 阅读 · 0 评论 -
同步(Synchronous)和异步(Asynchronous)
如图:上图中显示了同步方法调用和异步方法调用的区别。对于调用者来说,异步调用似乎是一瞬间就完成的。如果异步调用需要返回结果,那么当这个异步调用真实完成时,则会通知调用者。打个比方,比如购物,如果你去商场买空调,当你到了商场看重了一款空调,你就向售货员下单。售货员去仓库帮你调配物品。这天你热的是在不行了,就催着商家赶紧给你送货,于是你就在商店里面候着他们,直到商家把你和空调一起送回家,一次愉快的购物就结束了。这就是同步调用。不过,如果我们赶时髦,就坐在家里打开电脑,在电脑上订购了一台空调。原创 2024-10-09 15:18:03 · 446 阅读 · 0 评论