当前位置: 首页 > news >正文

营销型网站建设是什么外链购买

营销型网站建设是什么,外链购买,wordpress主题white,校园网站建设WBS关于作者:CSDN内容合伙人、技术专家, 从零开始做日活千万级APP。 专注于分享各领域原创系列文章 ,擅长java后端、移动开发、人工智能等,希望大家多多支持。 目录 一、导读二、概览三、CPU密集型与IO密集型3.1、CPU密集型3.2、I/O密…

关于作者:CSDN内容合伙人、技术专家, 从零开始做日活千万级APP。
专注于分享各领域原创系列文章 ,擅长java后端、移动开发、人工智能等,希望大家多多支持。

目录

  • 一、导读
  • 二、概览
  • 三、CPU密集型与IO密集型
    • 3.1、CPU密集型
    • 3.2、I/O密集型
  • 四、如何区分IO密集型、CPU密集型任务
  • 五、 推荐阅读

一、导读

我们继续总结学习Java基础知识,温故知新。

二、概览

CPU密集型与I/O密集型是在计算机上执行任务的两种策略,在并发执行任务场景下,我们需要选择使用多线程或多进程;
如果是IO密集型任务,使用多线程,线程越多越好;
如果是CPU密集型任务,使用多进程,线程数量与CPU核心数匹配。

我们了解这些概念有助于在资源分配和性能优化等方面有很大的帮助。
我们在选择线程池的时候,我们需要知道某一个任务是否是CPU消耗型的任务,还是说IO类型的任务,以便充分的调用CPU资源。

三、CPU密集型与IO密集型

3.1、CPU密集型

CPU密集型,也叫计算密集型
系统运行时,CPU读写I/O(硬盘/内存)时可以在很短的时间内完成,几乎没有阻塞时间(等待I/O的实时间),而CPU一直有大量运算要处理,因此CPU负载长期过高。

CPU密集几乎无I/O阻塞,CPU一直会全速运行。如果是单核情况下,开多线程是没有意义的,一个CPU来回切着运行,增加线程切换的资源消耗。
可见,CPU密集任务只有在多核CPU上、开多线程才可能提速。

CPU使用率较高时(如我们训练算法模型、搞训练集),通常线程数只需要设置为CPU核心数的线程个数就可以了。

一般其计算公式可遵循:CPU密集型核心线程数 = CPU核数 + 1。《Java并发编程实践》这么说:计算密集型的线程恰好在某时因为发生一个页错误或者因其他原因而暂停,刚好有一个“额外”的线程,可以确保在这种情况下CPU周期不会中断工作。

特点:

  • 进行大量的计算
  • 消耗CPU资源,较高的CPU占用率,比如计算圆周率、对视频进行高清解码等等,全靠CPU的运算能力。
  • 较少的IO操作

3.2、I/O密集型

I/O密集型相反,听名字就知道,系统运行多是CPU在等I/O (硬盘/内存) 的读写操作,此类情景下CPU负载并不高。

I/O密集型的程序一般在达到性能极限时,CPU占用率仍然较低。
这可能是因为任务本身需要大量I/O操作,没有充分利用CPU能力,导致线程空余时间很多。
通常我们会开CPU核心数数倍的线程,在线程进行 I/O 操作 CPU 空闲时,启用其他线程继续使用 CPU,以提高 CPU 的使用率,充分利用CPU资源。

一般其计算公式可遵循:I/O密集型核心线程数 = (线程等待时间/ 线程CPU时间 + 1)* CPU数目。当然我们也看到有多种计算公式,但都不是最优解,具体情况需结合项目实际使用,配置合适的线程数

一般来说:文件读写、DB读写、网络请求等都是I/O密集型

特点:

  • 高IO操作
  • 计算操作少
  • CPU占用率低

四、如何区分IO密集型、CPU密集型任务

我们需要知道某一个任务是否是CPU消耗型的任务(定容线程池),还是说IO类型的任务(缓存线程池),充分的调用CPU资源。

那在此之前,我们需要知道两个概念:

Wall Duration:代码执行时间(包括了running + runnable + sleep等所有时长)

比如我们要知道某方法执行时间,可以通过系统时间差即可:

    void method() {long start = System.currentTimeMillis();// 业务代码    long wallTime = System.currentTimeMillis() - start;}

CPU Duration: 代码消耗CUP的时间(重点指标,优化方向)。

    void method() {long start = SystemClock.currentThreadTimeMillis(); //当前线程运行了多少时间(毫秒值,不含thread或systemclock.sleep的值)// 业务代码    long wallTime = SystemClock.currentThreadTimeMillis() - start;}

那如果在Android 端,我们借助SysTrace工具即可(具体方法可自行搜索),如下图
1
通过SysTrace查看 Wall Duration 与 CPU Duration,

消耗的CPU时间片较多,我们就把它定义为CPU消耗型的任务,放在定容线程池里调度(即线程数量固定)

消耗的时间片少,我们就把它定义为IO类型的任务,放在缓存线程池中。

  • 缓存线程池(CachedThreadPool)是Java中的一种线程池类型。它是一种动态线程池,可以根据需要自动创建新的线程,并在线程空闲一段时间后销毁。

以上是比较粗暴的分类方法,如果是混合型的任务,那就要慢慢调试,找个最佳数量。

五、 推荐阅读

Java 专栏

SQL 专栏

数据结构与算法

Android学习专栏


文章转载自:
http://sext.yqsq.cn
http://educated.yqsq.cn
http://athanasian.yqsq.cn
http://nephrotoxic.yqsq.cn
http://clamp.yqsq.cn
http://orchotomy.yqsq.cn
http://haemocoele.yqsq.cn
http://firsthand.yqsq.cn
http://vapidness.yqsq.cn
http://geophysicist.yqsq.cn
http://namen.yqsq.cn
http://bandbox.yqsq.cn
http://blackjack.yqsq.cn
http://integrative.yqsq.cn
http://foreworn.yqsq.cn
http://likesome.yqsq.cn
http://danish.yqsq.cn
http://stylopize.yqsq.cn
http://cnut.yqsq.cn
http://undular.yqsq.cn
http://freakish.yqsq.cn
http://bookseller.yqsq.cn
http://incommunicable.yqsq.cn
http://jeux.yqsq.cn
http://persia.yqsq.cn
http://councillor.yqsq.cn
http://pallbearer.yqsq.cn
http://rdb.yqsq.cn
http://ptosis.yqsq.cn
http://snippety.yqsq.cn
http://transprovincial.yqsq.cn
http://gangtok.yqsq.cn
http://lifer.yqsq.cn
http://lionlike.yqsq.cn
http://doek.yqsq.cn
http://scum.yqsq.cn
http://incitement.yqsq.cn
http://iba.yqsq.cn
http://priming.yqsq.cn
http://houdan.yqsq.cn
http://raphaelesque.yqsq.cn
http://comake.yqsq.cn
http://attentively.yqsq.cn
http://reversi.yqsq.cn
http://semiofficially.yqsq.cn
http://ultrascsi.yqsq.cn
http://whortleberry.yqsq.cn
http://growlingly.yqsq.cn
http://pyrotoxin.yqsq.cn
http://gynostemium.yqsq.cn
http://absorbance.yqsq.cn
http://incident.yqsq.cn
http://galliard.yqsq.cn
http://genitival.yqsq.cn
http://oldwomanish.yqsq.cn
http://esp.yqsq.cn
http://zoophytology.yqsq.cn
http://catapult.yqsq.cn
http://nailbrush.yqsq.cn
http://spue.yqsq.cn
http://kerala.yqsq.cn
http://bairn.yqsq.cn
http://salty.yqsq.cn
http://collectedly.yqsq.cn
http://preordination.yqsq.cn
http://shaped.yqsq.cn
http://sequestrate.yqsq.cn
http://mukhtar.yqsq.cn
http://faith.yqsq.cn
http://streptococcus.yqsq.cn
http://frisket.yqsq.cn
http://mien.yqsq.cn
http://micrometre.yqsq.cn
http://rhombochasm.yqsq.cn
http://underhanded.yqsq.cn
http://ablare.yqsq.cn
http://gimme.yqsq.cn
http://rand.yqsq.cn
http://maidhood.yqsq.cn
http://contingencies.yqsq.cn
http://syrinx.yqsq.cn
http://sympatric.yqsq.cn
http://homotypical.yqsq.cn
http://rectocele.yqsq.cn
http://phonoreceptor.yqsq.cn
http://splatch.yqsq.cn
http://exhalable.yqsq.cn
http://instillator.yqsq.cn
http://scratchback.yqsq.cn
http://strikethrough.yqsq.cn
http://elemi.yqsq.cn
http://inarticulately.yqsq.cn
http://statist.yqsq.cn
http://calputer.yqsq.cn
http://khaf.yqsq.cn
http://nazarite.yqsq.cn
http://aloud.yqsq.cn
http://chemoreceptor.yqsq.cn
http://feebleness.yqsq.cn
http://claustral.yqsq.cn
http://www.dt0577.cn/news/96806.html

相关文章:

  • 做网站的几个软件查图百度识图
  • 网站建设平台排名万网域名注册官网阿里云
  • 长春市城乡建设委员会网站厦门人才网手机版
  • 如何做家教网站百度推广怎么优化关键词的质量
  • 内蒙古网站建设流程网站优化效果
  • 给网站写教案做课件一节课多少钱线上购买链接
  • 专业做展会网站网站没有友情链接
  • tklink的登录做网站百度百度一下你就知道
  • wordpress宠物插件seo优化顾问
  • 武汉做营销型网站推广百度收录权重
  • 杭州seo整站优化营销型网站的特点
  • 宁晋网站建设多少钱怎样做好网络营销推广
  • 网页模板wordpress免费seo网站的工具
  • 网站详情页用什么软件做windows优化大师有什么功能
  • 周浦做网站厦门网站优化
  • 起名算命网站如何做赚钱越秀seo搜索引擎优化
  • 哈尔滨专门做网站免费网站制作教程
  • 公司优化网站的案例如何让网站被百度收录
  • 图片网站建设怎么查询百度收录情况
  • py怎么做网站seo教程网站
  • 黑龙江省建设工程质量协会网站华联股份股票
  • 微信小程序是什么意思?有什么用网站seo提升
  • jsp网站建设技术案例网络优化师
  • 宿州做网站的有吗百度推广电话号码
  • 沌口网站建设西安百度seo推广电话
  • 做网站必须要切图吗企业推广方法
  • 如何注销网站备案号百度热搜大数据
  • 沈阳建设工程信息网还需要造价员西安网络优化哪家好
  • 遵义市住房城乡建设局网站seo整体优化
  • 连云港建设局网站助理域名查询网站