自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 收藏
  • 关注

原创 内存泄漏和内存溢出的区别与解决方式?

内存泄漏与内存溢出的区别: 内存泄露:是指程序在申请内存后,无法释放已申请的内存空间就造成了内存泄漏,一次内存泄漏似乎不会有大的影响,但内存泄漏堆积后的后果就是内存溢出。我们知道了内存泄漏的原因而内存溢出则有可能是因为我们我们多次内存泄漏堆积后的后果则变成了内存溢出 内存溢出(out of memery)OOM :指程序申请内存时,没有足够的内存供申请者使用,或者说,给了你一块存储int类型数据的存储空间,但是你却存储long类型的数据,那么结果就是内存不够用,此...

2021-06-02 21:09:17 109

原创 如何保证线程数据安全问题的?

既然存在线程安全的问题,那么肯定得想办法解决这个问题,怎么解决?说说常见的几种先上图,后分析。不可变 (final) 在java语言中,不可变的对象一定是线程安全的,无论是对象的方法实现还是方法的调用者,都不需要再采取任何的线程安全保障措施。final关键字修饰的类或数据不可修改,可靠性最高。如String类,Integer类。线程封闭:把对象封装到一个线程里,只有一个线程能看到这个对象,那么这个对象就算不是线程安全的,也不会出现任何线程安全方面的问题。线程封闭有三种:...

2021-06-01 21:37:42 293

原创 什么是协程?

协程: 什么是协程? 第一步先上图:先看图上怎么写的可能就会有大概的了解: 协程:是一种比线程更加轻量级的存在,协程不是被操作系统内核所管理,而完全是由程序所控制(也就是在用户态执行)。这样带来的好处就是性能得到了很大的提升,不会像线程切换那样消耗资源。 子程序,或者称为函数,在所有语言中都是层级调用,比如A调用B,B在执行过程中又调用了C,C执行完毕返回,B执行完毕返回,最后是A执行完毕。所以子程序调用是通过栈实现的,一个线程就是...

2021-05-31 19:59:41 769

原创 谈谈线程阻塞的原因有哪些?

线程阻塞的原因:?线程在运行的过程中因为某些原因而发生阻塞,阻塞状态的线程的特点是:该线程放弃 CPU的使用,暂停运行,只有等到导致阻塞的原因消除之后才回复运行。或者是被其他的线程中断,该线程也会退出阻塞状态,同时抛出InterruptedException。导致阻塞的原因有很多种,大致分为三种来讨论,分别是一般线程中的阻塞,Socket客户端的阻塞,Socket服务器端的阻塞。一般线程中的阻塞:A、线程执行了Thread.sleep(int millsecond);方法,当前线程放弃...

2021-05-28 19:57:45 942

原创 线程阻塞的原因有哪些?

线程阻塞的原因:线程在运行的过程中因为某些原因而发生阻塞,阻塞状态的线程的特点是:该线程放弃 CPU的使用,暂停运行,只有等到导致阻塞的原因消除之后才回复运行。或者是被其他的线程中断,该线程也会退出阻塞状态,同时抛出InterruptedException。导致阻塞的原因有很多种,大致分为三种来讨论,分别是一般线程中的阻塞,Socket客户端的阻塞,Socket服务器端的阻塞。一般线程中的阻塞:A、线程执行了Thread.sleep(int millsecond);方法,当前线程放弃CPU,睡眠

2021-05-27 19:29:32 2726

原创 什么是线程?

线程:Thread类中有这样的明确定义:线程是程序中执行的线程 ,Java虚拟机允许程序同时运行多个执行线程、.1. 线程有6 种状态: :新建,运行(可运行),阻塞,等待,计时等待和终止。 新建:当使用new操作符创建新线程时,线程处于“新建“状态 运行(可运行):调用start()方法 阻塞:当线程需要获得对象的内置锁,而该锁正在被其他线程拥有 等待:当线程等待其他线程通知调度表可以运行时 计时等待:对于一些含有时间参数的方法,如Thread类的sleep() 终止:当run()方法

2021-05-26 21:03:45 348 1

原创 线程与进程的区别

总结: 1.什么是线程,什么是进程? 进程:进程是并发执行程序在执行过程中资源分配和管理的基本单位(资源分配的最小单位)。进程可以理解为一个应用程序的执行过程,应用程序一旦执行,就是一个进程。每个进程都有自己独立的地址空间,每启动一个进程,系统就会为它分配地址空间,建立数据表来维护代码段、堆栈段和数据段。 线程:程序执行的最小单位。 为什么要有线程? 每个进程都有自己的地址空间,即进程空间,在网络或多用户换机下,一个服务器通常需要接收大量不确定数量用户的..

2021-05-25 21:31:38 83

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除