![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java笔记
文章平均质量分 66
在学习java过程中做的学习笔记
梦醒着做
这个作者很懒,什么都没留下…
展开
-
线程安全问题的原因和解决方案
5.要知道,加锁并不是说CPU一鼓作气执行完,中间可能会有调度切换,即使t1被切换了,t2仍然是LOCK状态,不能在CPU上执行(就像你在付费自习室中选中了A1这个座位并付了2个小时的钱,如果中间你出去看热闹去了,但是时间还没到,别人是不能占用你的位子的).理解:像count++一种操作,本质上是三个CPU指令(load,add,save),一个CPU执行指令都是以一个指令为单位进行执行,一个指令就相当于CPU上的"最小单位",不能还没执行完就被调度走了.(1)加锁(使操作变成原子的)原创 2023-04-01 22:30:54 · 79 阅读 · 0 评论 -
CSS 选择器的常见用法
CSS 要写到 style 标签中style 标签可以放到页面任意位置. 一般放到 head 标签内.CSS 使用 // 作为注释. (使用 ctrl + / 快速切换) .原创 2023-03-21 21:54:33 · 75 阅读 · 0 评论 -
HTML 中的常用标签用法
第八个是下拉标签,在nihao3中有selected=“selected” 这个是强制选择nihao3,就是说如果你在下拉栏中不管选择什么选项都最终都会是选择nihao3,把selected="selected"删掉就可以自由选择了。src里面是放图片的路径,有相对路径(第一个img)和绝对路径(第二个img)两种,相对路径中./表示的是当前文件夹的位置,也就是这个你自己写的html所在位置,href中是地址,中间的百度,搜狗,和img显示的图片,点击a标签中的文字或图片都能跳转到所写的网址。原创 2023-03-20 00:46:19 · 144 阅读 · 0 评论 -
Java 线程的几种状态
NEW:Thread对象创建出来了,但是内核CPU还没创建.(还没有真正创建线程)TIMED_WAITING:按照一定的时间,进行阻塞.通过sleep来完成。RUNNABLE:就绪状态.(正在CPU上运行 + 在就绪队列中排队)TERMINATED:内核的PCB销毁了,但是Thread对象还在。WAITING:特殊的阻塞状态,调用wait方法来进入。BLOCKED:等待锁的时候进入的阻塞状态。原创 2023-03-18 16:56:45 · 46 阅读 · 0 评论 -
Thread 类的基本用法
例如我们使用了Thread.sleep(1000),就能把这个线程由就绪队列放到阻塞队列当中,不是说只阻塞1000ms,而是要至少1000ms,下一次使用的时间是由操作系统的需求来决定的,可以看作有两个队列,像链表那样串在一起,一个是就绪队列,一个是阻塞队列,操作系统在管理这些PCB时会有多个链表.使用join,在main线程中调用t.join就是让main线程阻塞等待,等到t执行完了,main才能继续执行。(3)继承 Thread, 重写 run, 使用匿名内部类。(2)使用标准库自带的标志位。原创 2023-03-18 16:19:14 · 45 阅读 · 0 评论 -
进程和线程的区别和联系
2.线程是指进程内的一个执行单元,也是进程内的可调度实体.一个程序至少有一个进程,一个进程至少有一个线程,一个线程只属于一个进程.3.同一个进程的多个线程之间共用同一份内存/文件资源,进程和进程之间则是独立的内存/文件资源。3.资源分配给进程,同一进程的所有线程共享该进程的所有资源。4.进程是资源分配的基本单位,线程是调度执行的基本单位。4.处理机分给线程,即真正在处理机上运行的是线程。2.线程比进程更轻量,创建更快,销毁也更快。1.二者均可并发执行.原创 2023-03-17 23:59:42 · 149 阅读 · 0 评论 -
进程调度的基本过程
当一个程序跑起来的时,就叫进程.这里就是跑起来的程序,也就是进程。原创 2023-03-17 00:45:14 · 50 阅读 · 0 评论