计算机网络
文章平均质量分 95
富春山居_ZYY(已黑化)
╭( ′• o •′ )╭☞就是这个人!
展开
-
面试题:垃圾回收机制(GC)
一、垃圾回收对象JVM运行时的数据区包括程序计数器、栈、堆、方法区、本地方法栈其中程序计数器、栈和本地方法栈是和线程绑定在一起的,当创建了线程,就会申请内存,当线程结束的时候,想关的内存就会被销毁。方法区主要是类对象,类加载的时候就会申请这里的内存,“类卸载”操作实际上是很少会涉及到的。因此,垃圾回收机制主要回收的对象就是堆,并且垃圾回收释放内存,实际上是在以对象为单位进行释放,因为内存的申请是以对象为单位进行申请的,当整个对象的内存都不在使用时,即没有引用指向这个对象时,就可以将其进行释放二、垃圾原创 2022-04-23 20:33:57 · 1828 阅读 · 38 评论 -
Thread 类及常用的方法
文章目录一、Thread 的常见构造方法二、Thread 的常见属性三、创建线程四、中断线程五、线程等待六、获取线程引用七、线程休眠八、线程状态一、Thread 的常见构造方法方法说明Thread()创建线程对象Thread(Runnable target)使用 Runnable 对象创建线程对象Thread(String name)创建线程对象并命名Thread(Runnable target,String name)使用 Runnable 对象创建线程对原创 2022-04-10 14:29:57 · 2985 阅读 · 31 评论 -
操作系统中的进程
文章目录一、操作系统的基本定位二、操作系统中的进程2.1 进程管理2.2 进程属性2.3 并行和并发2.4 进程的独立性2.5 进程间通信操作系统是计算机中最重要的软件,常见的操作系统有 Windows ,Linux ,iOS,Android等等一、操作系统的基本定位基本功能 :管理计算机中的各种硬件设备给计算机上的各种软件资源提供稳定的运行环境在计算机中操作系统处于的位置如下图:比如,写一个简单的 Java 代码 System.out.println(“hello world”);原创 2022-04-06 18:43:30 · 2477 阅读 · 27 评论 -
线程介绍与创建
文章目录一、线程的出现二、进程与线程的概念三、创建线程四、面试题:run方法和 start 方法五、多线程并发编程的优势为什么要使用并发编程呢?并发编程可以提高多核 CPU 的使用效率。提升访问 I/O 时的 CPU 的利用率,让等待 I/O 的时间能够做一些其他的工作。比如,当某一个进程要在网上下载一些东西的时候,就会处于阻塞状态,使用并发编程, CPU 就不会再给该进程分配时间,其他的进程可以不熟任何影响的获取到 CPU 的时间多进程编程虽然可以实现并发编程,但是 CPU 是以原创 2022-04-08 12:59:30 · 2634 阅读 · 23 评论 -
线程安全问题分析
文章目录一、抢占式执行二、两个线程修改同一变量三、原子性四、内存可见性五、指令重排序多线程可以实现并发编程,从而提升效率。但由于多线程的调度的随机性,导致程序出现错误,这就叫做“线程不安全”。如果在多线程的条件下,程序运行的结果和单线程条件下运行的结果是一致的,那么该线程就是安全的。那么,多线程在哪些情况下会不安全呢?有如何解决这样的不安全问题呢?一、抢占式执行出现线程安全问题的根本问题就是线程的抢占式执行抢占式执行意思就是,当某个线程正在执行,在就绪队列中有一个更高优先级的任务出现了,当前任务就原创 2022-04-14 15:12:54 · 1659 阅读 · 22 评论 -
synchronized 特性与使用
文章目录一、特性1.1 互斥性(不可中断性)1.2 保证内存可见性1.3 禁止指令重排序1.4 可重入锁二、面试题:死锁2.1 一个线程,一把锁2.2 两个线程,两把锁2.3 N个线程,M把锁2.4 死锁产生条件:2.5 破解死锁三、synchronized 使用方法3.1 直接加到普通方法3.2 修饰静态方法3.3 修饰代码块一、特性1.1 互斥性(不可中断性)当进入 synchronized 修饰的代码块时,就相当于拿到了锁,叫加锁当退出 synchronized 修饰的代码块时,就相当于释原创 2022-04-16 12:38:43 · 1039 阅读 · 33 评论