加入收藏 | 设为首页 | 会员中心 | 我要投稿 惠州站长网 (https://www.0752zz.com.cn/)- 办公协同、云通信、物联设备、操作系统、高性能计算!
当前位置: 首页 > 运营 > 正文

2020年手机业务遭重创

发布时间:2021-02-01 10:46:05 所属栏目:运营 来源:互联网
导读:每种状态简单说明: NEW(初始):线程被创建后尚未启动。 RUNNABLE(运行):包括了操作系统线程状态中的Running和Ready,也就是处于此状态的线程可能正在运行,也可能正在等待系统资源,如等待CPU为它分配时间片。 BLOCKED(阻塞):线程阻塞于锁。 WAITING(等待

每种状态简单说明:

  • NEW(初始):线程被创建后尚未启动。
  • RUNNABLE(运行):包括了操作系统线程状态中的Running和Ready,也就是处于此状态的线程可能正在运行,也可能正在等待系统资源,如等待CPU为它分配时间片。
  • BLOCKED(阻塞):线程阻塞于锁。
  • WAITING(等待):线程需要等待其他线程做出一些特定动作(通知或中断)。
  • TIME_WAITING(超时等待):该状态不同于WAITING,它可以在指定的时间内自行返回。
  • TERMINATED(终止):该线程已经执行完毕。

线程生命周期
 

有了进程以后,可以让操作系统从宏观层面实现多应用并发。

而并发的实现是通过 CPU 时间片不端切换执行的,对于单核 CPU来说,在任意一个时刻只会有一个进程在被CPU 调度。

线程的生命周期

既然是生命周期,那么就很有可能会有阶段性的或者状态的,比如人的一生一样:

精子和卵子结合---> 婴儿---> 小孩--> 成年--> 中年--> 老年-->去世

线程状态

关于线程的生命周期网上有不一样的答案,有说五种也有说六种。

Java中线程确实有6种,这是有理有据的,可以看看java.lang.Thread类中有个这么一个枚举。
 

进程与线程

「进程」

进程的本质是一个正在执行的程序,程序运行时系统会创建一个进程,并且「给每个进程分配独立的内存地址空间,用来保证每个进程地址不会相互干扰」。

同时,在 CPU 对进程做时间片的切换时,保证进程切换过程中仍然要从进程切换之前运行的位置处开始执行。所以进程通常还会包括程序计数器、堆栈指针。

相对好理解点的案例:电脑上开启QQ就是开启一个进程、打开IDEA就是开启一个进程、打开浏览器就是开启一个进程.....

当我们的电脑开启你太多的运用(QQ,微信,浏览器、PDF、word、IDEA等)后,电脑就很容易出现卡顿,甚至死机,这里最主要原因就是CPU一直不停地切换导致的。

下图是单核CPU情况下,多进程之间的切换:
 

质量改变

由于DevOps涉及频繁更改,因此您必须测量部署之间的变化率以支持部署频率编号。最终目的应该是集中精力进行有意义的改进,以减少不便并带来更流畅的体验。对于每个部署,监视变更量可以更精确地描述开发。您可以从GitHub,Bitbucket和Jira等工具获取此信息。

客户反馈

积极的客户体验对于产品的生存至关重要。满意的客户和良好的客户服务导致销量增加。这就是为什么客户票证表明客户满意度的水平,反映了您的DevOps流程的质量。数字越小,服务越好。

总结一下

DevOps的目的是促进开发团队与运营团队之间的协调与协作,以支持应用程序的快速执行,同时最大程度地减少对最终用户的体验产生负面影响的中断,延迟和问题。

(编辑:惠州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

推荐文章
    热点阅读