关于对多线程中常见问题的总结

简介: 关于对多线程中常见问题的总结

进程和线程的区别

①进程是申请系统资源的最小单位,线程是cpu调度的最小单位

②进程中最小包括一个线程(主线程)

③多个线程可以共享进程申请的资源

④线程一旦崩溃,必然影响进程,而进程之间并不相互影响

线程的优点

①线程开辟的资源比进程小

②线程可以充分利用cpu核心数,实现并发执行,提高运行效

wait()和sleep()的区别

①wait()和sleep()方法都能让线程阻塞一会儿

②wait()需要和synchronized关键字一起使用,需要释放锁,但是sleep()和锁没有关系

③wait()可以通过notify()和等待时间超时进行唤醒,唤醒之后重新竞争锁资源,但是sleep()只能通过超时时间获取

线程池的参数

image.png

  1. 线程池的操作流程

b239b3fed6baae9d2529531b90d9a37e.png


相关文章
|
14天前
|
安全 Java
Java多线程编程实践中的常见问题与解决方案
Java多线程编程实践中的常见问题与解决方案
|
14天前
|
安全 Java 开发者
Java多线程编程实践中的常见问题与解决方案
Java多线程编程实践中的常见问题与解决方案
|
5天前
|
设计模式 安全 Java
Java面试题:请列举三种常用的设计模式,并分别给出在Java中的应用场景?请分析Java内存管理中的主要问题,并提出相应的优化策略?请简述Java多线程编程中的常见问题,并给出解决方案
Java面试题:请列举三种常用的设计模式,并分别给出在Java中的应用场景?请分析Java内存管理中的主要问题,并提出相应的优化策略?请简述Java多线程编程中的常见问题,并给出解决方案
14 0
|
13天前
|
安全 Java 程序员
Java多线程编程最佳实践与常见问题解析
Java多线程编程最佳实践与常见问题解析
VS2008多线程WinSock通信中常见问题及解决方案
问题一、VS2008中,CString转化为char*时,GetBuffer(m_str.GetLength())等屡试不爽? 解决方案:无奈网友这个函数还好使[大家不用再发帖问了,这是相对较好的解决方案],主要是Unicode和GB2312编码方式的不同,一般出现在winsock的send或recv函数buf处。可以使用如下函数实现上述功能。 ———————————————— 版权声明:本文为CSDN博主「铭毅天下」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/laoyang360/article/d
190 0
|
开发者 网络架构
VS2008多线程WinSock通信中常见问题及解决方案
VS2008多线程WinSock通信中常见问题及解决方案示例
342 0
|
5天前
|
设计模式 安全 Java
Java面试题:设计模式如单例模式、工厂模式、观察者模式等在多线程环境下线程安全问题,Java内存模型定义了线程如何与内存交互,包括原子性、可见性、有序性,并发框架提供了更高层次的并发任务处理能力
Java面试题:设计模式如单例模式、工厂模式、观察者模式等在多线程环境下线程安全问题,Java内存模型定义了线程如何与内存交互,包括原子性、可见性、有序性,并发框架提供了更高层次的并发任务处理能力
17 1
|
5天前
|
设计模式 存储 安全
Java面试题:设计一个线程安全的单例类并解释其内存占用情况?使用Java多线程工具类实现一个高效的线程池,并解释其背后的原理。结合观察者模式与Java并发框架,设计一个可扩展的事件处理系统
Java面试题:设计一个线程安全的单例类并解释其内存占用情况?使用Java多线程工具类实现一个高效的线程池,并解释其背后的原理。结合观察者模式与Java并发框架,设计一个可扩展的事件处理系统
14 1
|
3天前
|
缓存 Linux 编译器
【Linux】多线程——线程概念|进程VS线程|线程控制(下)
【Linux】多线程——线程概念|进程VS线程|线程控制(下)
11 0