作者】杨碧玲

多核与多线程都是提升处理器处理性能的重要手段,如今多核处理器随处可见,多线程处理器似乎鲜有提及,其实多线程并不是一个新鲜的概念,在很多地方也有广泛的应用。到底多核处理器与多线程处理两者之间有何差异?各有什么优势?哪种技术更能满足未来需求的发展?

 

随着应用需求变得越来越复杂,对处理器计算能力的要求也大大提高,作为提升处理器计算能力的一种重要技术,多核架构在处理器中应用得越来越普遍,从台式机到平板电脑、智能手机等便携设备,到处都可以看到多核处理器的身影。如今双核处理器已成为市场主流,而四核、八核甚至更多核产品的开发也正在进行中,一方面国内外主流的半导体公司都争先恐后地推出自己的多核处理器产品,另一方面处理器也在往核数越来越多的方向发展。


在多核技术被炒得火热的背后,同为提升处理器计算能力方法的多线程技术却似乎不被人关注。实际上在现实中,多线程处理器的应用早于多核,早在十年前,英特尔就推出了超线程(即双线程)技术,通过利用特殊的硬件指令,把两个逻辑内核模拟成两个物理芯片,让单个处理器都能使用线程级并行计算,进而兼容多线程操作系统和软件,减少CPU的闲置时间和提高CPU的运行效率。随着芯片设计技术的进步,目前市场上也出现了多种先进的多线程架构处理器。


那么这两种技术有什么不同,对于下游系统厂商来说应该如何选择?未来哪一种技术会成为主导,以及会有怎样的发展趋势呢?

 

技术与性能比较


既然同为提升处理器性能的技术手段,它们之间又有什么差异?简单地说,多核处理器是集成了多个处理器核心,其可同时执行的任务数是单核处理器的数倍,从而提高处理器的并行性能,而多线程处理器是在单核中加入并行执行架构以发挥核的最大效能来提高处理性能。从芯片设计的角度来看,多线程处理器在设计时需要对内核的微架构进行调整,开发难度比多核处理器要困难,因为多核只是需要处理核与核之间的关联,而多线程需要对核的内部架构进行调整。


深圳中微电科技有限公司首席技术官梅思行从资源共享方面指出两者的差别,“多核处理器与多线程处理器的主要区别在于:多核的硬件资源是独立而且不可以共享的,而多线程处理器在同一核内的线程之间可以进行资源的共享。”梅思行说道,“其实多线程技术在GPU上用得是非常多的,它的好处在于一是资源共享,二是延迟屏蔽。”正是因为有这两个突出的优点,多线程处理器在执行效率上有很大的优势。


MIPS中国区市场总监费浙平也认为多线程技术效率更高,另外多线程处理器也比多核更节省功耗。他指出,对于多核处理器每多增加一个核,功耗除了会相应增加一倍外,再加上额外的开销,总功耗就会有2倍以上的增加,但性能却没有成倍的增加,所以也可以说多核处理器是以功耗的增加来换取性能的提升。而多线程处理器因为在硬件面积上相比单线程处理器并不是成倍的增加,所以功耗也不是成倍增加。


不过ARM中国区总经理吴雄昂却不认同多核处理器效率低的观点,他认为多核与多线程技术都是利用应用的平行性,但在绝大部分的应用处理上多核处理器更有效率,因此才得到主流操作系统与软件的支持。而多线程技术只有在一些特定的实时数据处理任务上比较有效率, 如大量的平行包处理,但这类应用也需要多核。他举例道:“多核就好比是两辆车,任务好比是人,一人一车去不同的地方;多线程好比是拼车,因为要去较远的不同地方,效率反而不好。”因此他认为多线程在手机、PC等应用上没有优势,甚至很多高端应用上多线程其他开销反而会降低了性能。


尽管两种技术看上去截然不同,但芯原微电子中国业务和技术支持高级总监汪洋却认为,实际上多核技术也是一种多线程技术,只是在空间上静态划分了主要的硬件处理资源。多线程技术是在开发指令级并行性的基础上进一步开发线程级并行性,最大限度地利用处理器内部执行资源并具有最大的灵活性,但单核多线程处理器设计实现难度也最大。相对多线程架构来说,多核架构比较灵活,不管是“同构多核”还是“异构多核”,可在设计验证简化和应用适应性等多方面进行调整和折中,但其资源利用率相对多线程来说比较低。


既然两者都是通过采用并行计算的方式来提升处理器性能的,那么多核处理器相对单核处理器、多线程相对单线程性能的提升是怎样的关系,在功耗、成本方面又有什么影响?汪洋表示,不能简单地说双核就会有一倍的提高,四核就会有三倍的提高,实际的提升还要取决于所承载的应用以及多核架构下所采用的片上通信技术、存储器共享技术、操作系统调度和软件开发等因素,多核处理器相对于单核处理器的优势是显而易见的在成本上,由于多个核都集成在同一个芯片内,可以共享资源并提高核间通信效率,而单核处理器为了达到同样的性能,必然要通过提高指令级并行度和时钟频率来提高处理性能,这将增加单核处理器的设计验证成本,并且频率提升也将带来功耗的增加。另外,多核处理器的工作频率和工作电压可以比单核处理器低,再结合动态管理各个核心处理器功耗的方法,其在功耗控制上会更有优势


“在日常多任务应用使用性能上双核可比单核提高1.8~1.9倍,而在功耗上增加远低于2倍。这是因为我们日常应用有很多平行性的多任务,比如听音乐同时上网,或收发电子邮件等,这时多核非常有效。因为同时对应不同的任务时,每个核可以降频或关闭,因此功耗在同等处理能力上更低。”吴雄昂说道。为了进一步降低多核处理器的功耗,ARM去年底还推出了异构大小核(big.LITTLE)双A15/A7产品,让手机、平板电脑等在普通应用时只开A7,在大型应用时转开A15,这样在保持低功耗的同时具有PC级别的高处理能力。


一位业内人士也表示,增加一个内核其成本相对芯片总成本来说不算增加很多,因为芯片的成本涉及到封装、授权费、晶圆制造等等。如果芯片成本是十多美元的话,增加一个核产生的成本小于1美元。


可以这么说,多核处理器是以硬件规模增加换取性能的提高,那么多线程呢?费浙平指出,单核双线程处理器相对单核单线程来说,硬件复杂度仅增加20%~30%,而性能提升的多少于应用和软件的支持,在最差的情况下,可能会完全没有提升;而在最好的情况下,性能可以提升80%左右。“多线程和多核处理器相同的地方就是,性能的提升都需要软件的配合,主要是操作系统的支持,若操作系统是支持并行处理的话,那么就能支持多核或者多线程。性能的提升不是常数,取决于并行量的大小。”费浙平说道。


如果对由多个单线程独享内核组成的多核处理器与一个多线程内核进行比较,各自又有什么优势?汪洋认为,多核处理器的设计难度和周期要占优,功耗控制也更为灵活,并且深亚微米工艺下线延时大于门延时对其负面影响相对小些,其基本处理器单元的时钟频率容易做得更快;而多线程处理器优势是资源利用率较高,同时兼顾了指令并行度和线程并行度。


“多核处理器的优势在于性能的稳定性和核内设计的简单性,而多线程处理器的优势在于功耗、成本和伸缩性。”梅思行说道,这里的伸缩性指的是核的可扩展性。虽然单核多线程相对单核单线程来说开发难度大,但是从整体来看,多线程处理器的核扩展能力要优于多核处理器。“例如拿我们的单核四线程MVP与一个四核处理器来比较,我们的单核里面就包含了四个线程,对操作系统来说相当于SMP的四核;而对于四核处理器需要处理四个核之间的关系,复杂度会大大提高。”他说道。

 

对系统开发人员来说开发难度一致


由于多线程处理器在硬件架构上复杂度大于多核处理器,那么对于整机系统开发厂商来说,是不是基于多线程处理器的开发难度会大于多核呢?其实不然。费浙平指出,对系统开发人员来说,基于两种不同技术的开发难度都是一样的,他们都不需要关心底层处理器是多核还是多线程的,只要操作系统支持并行处理,那么在该操作系统上进行的开发并没有什么差别,唯一不同的地方可能就只是总线接口的不同而已。“其实也正是因为操作系统或软件大型化、复杂化以及对并行处理的支持,多核、多线程等技术才有了用武之地。就像在消费电子领域,Android 4.0的出现为推动多核技术发展起了非常大的作用。”他说道。


不过,在要求操作系统支持并行处理的同时,整体系统的软硬件开发人员也需要适应这种多线程处理器或多核处理器的开发要求。对于板级硬件工程师来说,以前单核处理器通过加大主频来提高性能,随之而来的是功耗和散热的问题,而采用并行计算技术所带来的散热问题将减轻,硬件设计难度会降低。但是对于软件工程师来说,需要学习新的编程模式以实现多线程、多任务调度,通过创立多线程、并行调试和各个线程或内核间性能调度优化等方式,更好地控制和安排处理器资源并提高程序效率。所以,并行编程和调试对软件厂商的挑战是存在的。尽可能地充分利用那些多线程编程的开发工具,可在一定程度上帮助开发人员设计出高效并可靠的多线程处理程序。


梅思行也表示:“我们的硬件设计已经完全做到让操作系统把多线程看成是SMP多核,只需要操作系统有处理多核的机制就同样能处理多线程。对系统开发人员来说,根本就不用关心处理器到底是多核还是多线程。至于选择哪种技术更为合适,如果是对成本和功耗比较敏感的话,多线程处理器则是最优的选择。”


至于系统开发人员是该选择多核还是多线程处理器,费浙平认为,主要看其关注的点,如果着重在主频和绝对性能的提高,则多核优于多线程,如果着重在效率和功耗方面,则多线程优于多核。

 

多核+多线程:满足未来发展需求


由于多核与多线程处理器都是采用并行技算技术,在数据并发量大以及数据实时处理的应用上如云计算、服务器系统、高速率无线互联网应用等都是非常有效的。特别在服务器系统中,一般也都是多核与多线程结合使用。


而在消费电子领域,由于ARM的推动,多核处理器已经深入人心,而多线程技术却似乎还没有用武之地。对于智能手机等消费类电子产品来说,因为目前其并行计算量并不大,双核或者说四核处理器已经完全够用,那么是不是就没有必要去发展多线程技术?因为毕竟多线程技术只有在网络服务器等并发量相当大的设备中才会用得到。不过随着移动设备中3D地图、3D视频等多媒体应用越来越普遍,对CPU和GPU的计算能力提出非常大的要求。如果只是单纯通过提高CPU核数或GPU线程数来提高性能的话,这样编程的复杂度将会非常高,功耗也会很大。梅思行表示,利用多核加多线程技术便能很好地解决这个问题。“我们的MVP多线程处理器是通过充分利用多核CPU和通用GPU这两大处理器技术的相似点而研发出来的,与之前一些多线程处理器最大的不同是MVP的多线程可动态地用于CPU和GPU,而其他多线程只能是为CPU使用。”梅思行说道,“其实多线程技术非常适合在对CPU和GPU都有高要求的场合使用,而未来移动终端、云终端中对计算能力要求越来越高的应用,必将推动着多核多线程处理器的发展。”


其实无论在网络或服务器领域还是在消费产品领域,对性能提升的要求是无止境的。而要满足这种快速增长的需求是远非单单靠增加处理器核数所能及的。首先,多核处理器中核数并不是越多越好,过多的内核将会引入更多的延迟,并降低整体时钟频率,而过度复杂的核间通信机制和总线传输管理也会影响多核系统性能。尤其在内核超过一定数量后,软件可编程性问题也将更为突出;再者考虑到功耗及成本,核数也不能无限制增加。


“多核与多线程技术不是完全对立的,而是某种程度上相辅相成的。”汪洋说道,“多核技术也可在其集成的单核处理器上采用多线程技术来提高单核资源利用率,从而弥补多核架构资源利用率低的缺点。”据透露,芯原也在规划多线程处理器的开发,除了开发针对高性能、多需求的应用场景的多核解决方案,为提高基本单核的处理能力,芯原也将在核中加入多线程技术。


“在消费电子领域,除多核技术外,多线程技术也是非常有必要的。因为多线程处理器在功耗和效率方面优于多核处理器。我们知道功耗的减少对便携消费电子产品来说是非常重要的。”费浙平说道,“从性能、成本、功耗等各方面综合考虑,我觉得未来发展应该是两者同时共存和结合使用,即多核多线程将会是未来处理器发展的最佳方式。”


多线程技术SMT

CPU多线程简称SMT,可通过复制处理器上的结构状态,让同一个处理器上的多个线程同步执行并共享处理器的执行资源,可最大限度地实现宽发射、乱序的超标量处理,提高处理器运算部件的利用率,缓和由于数据相关或Cache未命中带来的访问内存延时。

注:当没有多个线程可用时,SMT处理器几乎和传统的宽发射超标量处理器一样。

cpu的多线程技术可以为高速的运算核心准备更多的待处理数据,减少运算核心的闲置时间;解决了负载均衡问题,充分利用了CPU资源,提高CPU的使用率。采用多线程的方式可以同时完成几件事情而不互相干扰,缩短了处理大量的IO操作时或处理的情况需要花费大量的时间。

 

  1. 线程

(1)  进程,一个进程就是一个具有独立功能的应用程序,关于某个数据集合上的一次运行活动。进程是系统进行资源分配和调度的一个独立单位。

(2)  线程,线程是进程的实体,属于进程,是CPU调度和分派的基本单位。

 资源分配给进程,所有线程共享该进程的资源

(3)  操作系统的设计,可以归纳为3点。

  1. 以多进程形式,允许多个任务同时运行。
  2. 以多线程形式,允许一个任务拆分成多个线程运行。
  3. CPU提供协调机制,允许线程之间共享资源,防止线程之间产生冲突。
  4. CPU和线程的关系

(1)         第一阶段,单CPU时代,单CPU在同一时间点,只能执行单一线程。比如,的某一刻00:00:00 这一秒,只计算1+1=2(假设cpu每秒计算一次)

(2)         第二阶段,单CPU多任务阶段,计算机在同一时间点,并行执行多个线程。但这并非真正意义上的同时执行,而是多个任务共享一个CPU,操作系统协调CPU在某个时间点,执行某个线程,因为CPU在线程之间切换比较快,给人的感觉,就好像多个任务在同时运行。比如,电脑开了两个程序qq和qq音乐,假设这两个程序都只有一个线程。人能够感觉到CPU切换的频率是一秒一次,假设当前cpu计算速度是1秒1次,那么我们就能明显感到卡顿,当聊天,点击发送按钮时候,qq音乐就会停止运行。当前cpu计算速度是1秒100次,也就是它能在一秒之内在这两个进程见切换100次,那么我们就感不到卡顿,觉得QQ和QQ音乐是同时在运行。

(3)         第三阶段,多CPU多任务阶段,真正实现的,在同一时间点运行多个线程。具体到哪个线程在哪个CPU执行,这就跟操作系统和CPU本身的设计有关了。

  1. 举例说明

(1)假设一种极端情况,一台单核计算机,只运行2个程序A和B。

假设A和B的优先级相同,A有3个线程,B有1个线程,那么CPU分配给A和B的执行时间应该是3:1。

(2)假设同一种情况发生在一台多核计算机,核1处理A和B各一个线程,核2处理A剩下的线程。

(3)刚才说的是线程只消耗CPU,在实际应用中这种情况是不存在的,程序总会跟资源打交道,比如读个文件,查询数据库,访问网络,这个时候多线程才能体现出优势。在一个进程中,让A先用一下CPU去查询数据库,在A查询数据库的时候CPU空闲,B就用一CPU去读文件,让C去访问网络。相对于查询数据库,读取文件这些操作来说,CPU的计算时间几乎可以忽略不计。所以,多线程,实际上是计算机多种资源的并行运用,跟CPU有几个核心没什么关系


 

单个CPU一个时刻只能运行一个线程

单核CPU电脑同一时间内只能执行一个线程,首先了解一下,CPU执行的过程 ,它是把时间分成若干个小时间段,这些时间段很小的,系统中有很多进程,每个进程中又包含很多线程,在同一 时间段 内,电脑CPU只能处理一个线程(线程A),而下一个 时间段 就不一定是上一个时间段内执行的那个线程(线程A)了,可能是别的线程(线程B 吧)

CPU采用的是类似于时间片轮转的机制,也就是说同一时间一条进程提出执行请求时,其他进程只能等待它执行完毕,CPU才会处理其他请求。其他进程相当于在排队等待中。当然了,为了避免某条进程无限制时间的执行,一般会限定一个时间,超时 的话,CPU根据一定的线程调度算法来切换线程。可以看做很多线程在并发执行。其实还是在某一个时间点上只有一个线程在运行罢了。
多核的话,每个核心都是同样的原理。但是两个核心就可以通过系统分配资源,同时执行不同的进程,这个就更复杂了。
每条进程都有CPU分配的进程号的。避免混乱。

一个核心就是实实在在的一个cpu处理设备 线程的概念可以理解成电脑处理信息的通道 既一个线程一个通道 一般来说一个cpu核心处理一个通道的信息 但也不是绝对 因特尔支持超线程技术的cpu每个核心可以处理两个或多个通道的信息 这就可以形容为超线程(既多出来的通道的处理能力)但前提是软件也必须的支持超线程才行 否则单核双线程或多线程也只能有单个通道工作 从某种意义上来说cpu的能力被浪费了 所以网友一般就会说 真正的核心数(通道) 比虚拟出来的核心(通道)来个更实在。最后 线程数决定这CPU能同时处理几件事情,在没有超线程技术的情况下核心数等於线程数。


线程与进程的关系

1:线程定义

  • 线程是进程的基本执行单元,一个进程的所有任务都在线程中执行
  • 进程要想执行任务,必须得有线程,进程至少要有一条线程
  • 程序启动会默认开启一条线程,这条线程被称为主线程或 UI 线程

2:进程定义

  • 进程是指在系统中正在运行的一个应用程序
  • 每个进程之间是独立的,每个进程均运行在其专用的且受保护的内存

3:进程与线程的区别

  • 地址空间:同一进程的线程共享本进程的地址空间,而进程之间则是独立的地址空间。
  • 资源拥有:同一进程内的线程共享本进程的资源如内存、I/O、cpu等,但是进程之间的资源是独立的。
  • 一个进程崩溃后,在保护模式下不会对其他进程产生影响,但是一个线程崩溃整个进程都死掉。所以多进程要比多线程健壮。
  • 进程切换时,消耗的资源大,效率高。所以涉及到频繁的切换时,使用线程要好于进程。同样如果要求同时进行并且又要共享某些变量的并发操作,只能用线程不能用进程
  • 执行过程:每个独立的进程有一个程序运行的入口、顺序执行序列和程序入口。但是线程不能独立执行,必须依存在应用程序中,由应用程序提供多个线程执行控制。
  • 线程是处理器调度的基本单位,但是进程不是。

4:多线程的意义

  • 优点
    • 能适当提高程序的执行效率
    • 能适当提高资源的利用率(CPU,内存)
    • 线程上的任务执行完成后,线程会自动销毁
  • 缺点
    • 开启线程需要占用一定的内存空间(默认情况下,每一个线程都占 512 KB)
    • 如果开启大量的线程,会占用大量的内存空间,降低程序的性能
    • 线程越多,CPU 在调用线程上的开销就越大
    • 程序设计更加复杂,比如线程间的通信、多线程的数据共享
      5:多线程的原理
  • (单核cpu)同一时间,cpu只能处理 1 个线程。换言之,同一时间只有 1 个线程在执行
  • 多线程同时执行:
    *是 cpu 快速的在多个线程之间的切换
    * cpu 调度线程的时间足够快,就造成了多线程的“同时”执行效果
  • 如果线程数非常多
    * cpu 会在 N 个线程直接切换,消耗大量的 cpu 资源
    * 每个线程调度的次数会降低,线程的执行效率降低

 

查看全文
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

相关文章

  1. What?一次性补偿金也要交个税?

    最近有好友问蓝税君,公司给的补偿金是不是不用缴税呀,Ta最近刚得到一笔补偿金在纠结要不要交个税,这个个税又该怎么算呢?说实话,那一瞬间我也有点懵逼。一次性补偿金也要交个税?谁说的?好吧,被吐槽了一句:没文化真可怕!我……我,宰相肚里能撑船不和你计较~~~为了挣回…...

    2024/5/8 14:24:07
  2. 什么是SOA?什么是ESB?及其在银行业中是如何发展的?

    企业服务总线,即ESB全称为Enterprise Service Bus,指的是传统中间件技术与XML、Web服务等技术结合的产物。ESB提供了网络中最基本的连接中枢,是构筑企业神经系统的必要元素。面向服务的体系结构已经逐渐成为IT集成的主流技术。面向服务的体系结构(service-oriented architec…...

    2024/5/8 13:21:48
  3. 第23讲:利用资源,学会用打码平台处理验证码

    在前一课时我们介绍了多种多样的验证码,有图形文字的、有模拟点选的、有拖动滑动的,但其实归根结底都需要人来对某种情形做一些判断,然后把结果返回并提交。如果此时提交的验证码结果是正确的,并且通过了一些验证码的检测,就能成功突破这个验证码了。 那么,既然验证码就是…...

    2024/5/8 20:07:09
  4. STM32F4-SPI

    SPI 简介 SPI 是英语 Serial Peripheral interface 的缩写,顾名思义就是串行外围设备接口。是 Motorola首先在其 MC68HCXX 系列处理器上定义的。SPI 接口主要应用在 EEPROM,FLASH,实时时钟,AD 转换器,还有数字信号处理器和数字信号解码器之间。SPI,是一种高速的,全双工,同步的通…...

    2024/4/29 7:44:33
  5. 算法探索_实现 strStr()

    问题描述:实现 strStr() 函数。给定一个 haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始)。如果不存在,则返回 -1。示例 1:输入: haystack = "hello", needle = "ll" 输出: 2示例 2:输入: hay…...

    2024/4/29 7:44:23
  6. 网络安全与渗透:密码破解——xhydra,crunch,john(二)此生无悔入华夏,男儿何不带吴钩

    中华人民共和国网络安全法 阅读本文前,请熟读并遵守中华人民共和国网络安全法: http://gkhy.jiujiang.gov.cn/zwgk_228/jc/zcwj/202006/P020200618385401918830.pdf目录中华人民共和国网络安全法简介xhydratargetpasswordstuningstart弱口令超级弱口令工具说明简单使用字典制…...

    2024/4/29 7:44:24
  7. 以太坊2.0时代的未来规划

    8月8日,「2020以太币技术性及运用交流会我国」圆满举办。CSDN创办人&老总、极客邦创业投资创办人蒋涛、以太币创办人VitalikButerin、Unitimes、独角时期创办人姜英英、CSDN高级副总裁、通证经济发起者孟岩、DeFiLabs创办人代世超、PChain创办人曹锋、万向区块链试验室责任…...

    2024/4/29 2:47:38
  8. 局域网共享文件的方法,传输大文件比较快

    说到传输文件,我们可能很容易想到使用微信或者QQ发送文件,如果没有连接网络的话,可以考虑使用U盘或数据线,当然也可以使用第三方的共享文件,比如说茄子快传。以上方法的缺点自然是很明显的,微信QQ等方式需要联外网,传输速度取决于你的开通的宽带速度,U盘数据线太麻烦,…...

    2024/4/29 7:44:24
  9. 2020年8月阿里云服务器最新优惠活动,1折秒杀价格仅需96元!

    2020年8月阿里云有哪些最新优惠活动呢?今天笔者给大家整理出8月份最新的阿里云服务器ECS优惠活动。活动分为五大板块,分别为:今日限时秒杀、新用户专享1折、企业新用户特惠、爆款产品5折起、领取限量云产品优惠。活动地址:阿里云优惠活动专题活动内首先提供的是领取限量云产…...

    2024/5/8 15:23:21
  10. 牛客 区区区间间间 (单调栈)

    按照习惯一开始是要把题目复制一遍的,但是我想了一下,这个题目的符号复制过来会出现乱码,你说截图吧,又不想截图,那该怎么办,一时间不知道如何开始,所以就出现了上述的文字~~ 绝对的好题目!!! 首先对于题目给出的公式,我们需要转化一下,我们把原式拆开就等到下面的…...

    2024/4/29 7:44:35
  11. 商务部:区块链技术服务等新兴数字化服务离岸执行额同比增长迅猛

    根据商务部网站消息,2020年上半年,我国企业承接服务外包合同额6795.3亿元,执行额4501.3亿元,同比分别增长5.9%和10.9%。其中,新兴数字化服务和研发、维修等生产性服务快速增长。云计算服务、人工智能服务、区块链技术服务等新兴数字化服务离岸执行额同比增长迅猛。 原文链…...

    2024/4/29 7:44:05
  12. Example 2

    运行运行要破解的程序。消息框显示两条信息:删除所有Nags 查找registration code蓝色文字要求使用SmartCheck注册。分析第一个目标使去掉Nag消息框,要去除消息框,只要操作调用消息框的函数部分即可,Visual Basic中调用消息框的函数为MSVBVM50.rtcMsgBox。点击鼠标右键,Sea…...

    2024/5/8 12:09:25
  13. 谷歌发布Android 11 Beta 3

    外媒9to5 Google报道,谷歌于8月7日发布了 Android 11 的第三个公测版本,意味着谷歌移动操作系统的下一个大版本更新距离与大家正式见面又近了一步。继上次宣布转入平台稳定阶段以后,谷歌并未在 Android 11 Beta 3 中引入太多新内容,而是更专注于 bug 修复。不过与 COVID-19…...

    2024/5/8 16:04:57
  14. 移动端总结

    移动端笔记 touch事件移动端touch事件touchstart:手指在元素上摁下touchmove:手指在元素上摁下之后,在屏幕中移动touchend:手指在元素上摁下之后,在屏幕中抬起touch 事件 和 mouse 事件的区别 mousedown --> touchstart mousemove --> touchmove mouseup --> tou…...

    2024/4/29 7:43:54
  15. 2020数学建模新型冠状病毒肺炎的传播分析及对经济的影响

    新型冠状病毒肺炎(COVID-19)的传播分析及对经济的影响 请你建立 COVID-19 传播的数学模型,定量地研究传染病的传播规律,利用所给(不限于)资料和数据,作出预测并给出控制传染病蔓延的对策建议,具体要求如下:建立模型,预测不同国家或地区(至少预测两个国家或地区)确诊…...

    2024/5/9 0:41:10
  16. SQL Server 2019 无域搭建Always On环境

    SQL Server 2019 无域搭建Always On环境简介环境介绍服务器配置安装腹胀转移修改主机名并加入域修改hosts文件关闭防火墙修改DNS新建故障转移集群(任一台服务器)验证故障转移是否成功(任意一台电脑关机)设置共享文件数据库配置数据库开启Always On在数据库里面安装证书(特…...

    2024/5/8 12:17:22
  17. 第十五届全国大学生智能车竞赛浙江赛区隆重开幕

    第十五届全国大学生智能汽车竞赛 全国组委会主任李少远教授讲话稿各位组委会委员、各位专家、各位老师、各位同学: 大家上午好! 我代表智能汽车竞赛全国组委会向浙江省赛区组委会,向省赛的承办单位,向所有支持智能汽车竞赛的高校师生表示最衷心的感谢。 全国大学生智能车竞…...

    2024/5/8 12:59:25
  18. ERROR: Could not connect to lockdownd

    执行 ideviceinfo -u 和 ideviceinstall -l时,报错 ERROR: Could not connect to lockdownd解决办法先断开所有连接PC的iOS设备 执行brew uninstall libimobiledevice brew install --HEAD libimobiledevice brew link --overwrite libimobiledevice brew install --HEAD ide…...

    2024/5/9 2:07:30
  19. 实用UI素材|UI中的按钮设计

    为什么按钮如此普遍?让我们回顾一下物理按钮的历史和起源。物理按钮是UI组件的直接前身,因此在当今所有数字产品中都大量使用,即使用户不了解基本的机制或算法,只要触摸一下手指,即可使家用电器,汽车或系统处于运动状态。在“电源按钮”中,雷切尔普洛特尼克(Rachel Plo…...

    2024/4/29 7:43:31
  20. SQLServer知识干货

    1. SQLServer基础知识1.1. 前言1.1.1. SQLServer版本 1.1.2. 连接方式 1.1.3. 常见管理工具 1.1.4. 常见连接故障 1.1.5. SQLServer学习网站1.2. 应用基础1.2.1. 创建数据库 1.2.2. 创建表和索引 1.2.3. 修改表和索引 1.2.4. 添加记录 1.2.5. 修改记录 1.2.6. 删除记录 1.2.7. …...

    2024/4/29 7:43:46

最新文章

  1. leetcode91.解码方法(动态规划)

    问题描述: 一条包含字母 A-Z 的消息通过以下映射进行了 编码 : A -> "1" B -> "2" ... Z -> "26" 要 解码 已编码的消息,所有数字必须基于上述映射的方法,反向映射回字母(可…...

    2024/5/9 4:06:14
  2. 梯度消失和梯度爆炸的一些处理方法

    在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言,在此感激不尽。 权重和梯度的更新公式如下: w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...

    2024/5/7 10:36:02
  3. 深度解析SPARK的基本概念

    关联阅读博客文章: 深入理解MapReduce:从Map到Reduce的工作原理解析 引言: 在当今大数据时代,数据处理和分析成为了企业发展的重要驱动力。Apache Spark作为一个快速、通用的大数据处理引擎,受到了广泛的关注和应用。…...

    2024/5/3 22:01:49
  4. ROS2高效学习第十章 -- ros2 高级组件之大型项目中的 launch 其二

    ros2 高级组件之大型项目中的 launch 1 前言和资料2 正文2.1 启动 turtlesim,生成一个 turtle ,设置背景色2.2 使用 event handler 重写上节的样例2.3 turtle_tf_mimic_rviz_launch 样例 3 总结 1 前言和资料 早在ROS2高效学习第四章 – ros2 topic 编程…...

    2024/5/8 15:11:55
  5. 探索进程控制第一弹(进程终止、进程等待)

    文章目录 进程创建初识fork函数fork函数返回值fork常规用法fork调用失败的原因 写时拷贝进程终止进程终止是在做什么?进程终止的情况代码跑完,结果正确/不正确代码异常终止 如何终止 进程等待概述进程等待方法wait方法waitpid 进程创建 初识fork函数 在…...

    2024/5/5 1:11:34
  6. 416. 分割等和子集问题(动态规划)

    题目 题解 class Solution:def canPartition(self, nums: List[int]) -> bool:# badcaseif not nums:return True# 不能被2整除if sum(nums) % 2 ! 0:return False# 状态定义:dp[i][j]表示当背包容量为j,用前i个物品是否正好可以将背包填满&#xff…...

    2024/5/8 19:32:33
  7. 【Java】ExcelWriter自适应宽度工具类(支持中文)

    工具类 import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.CellType; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet;/*** Excel工具类** author xiaoming* date 2023/11/17 10:40*/ public class ExcelUti…...

    2024/5/7 22:31:36
  8. Spring cloud负载均衡@LoadBalanced LoadBalancerClient

    LoadBalance vs Ribbon 由于Spring cloud2020之后移除了Ribbon,直接使用Spring Cloud LoadBalancer作为客户端负载均衡组件,我们讨论Spring负载均衡以Spring Cloud2020之后版本为主,学习Spring Cloud LoadBalance,暂不讨论Ribbon…...

    2024/5/9 2:44:26
  9. TSINGSEE青犀AI智能分析+视频监控工业园区周界安全防范方案

    一、背景需求分析 在工业产业园、化工园或生产制造园区中,周界防范意义重大,对园区的安全起到重要的作用。常规的安防方式是采用人员巡查,人力投入成本大而且效率低。周界一旦被破坏或入侵,会影响园区人员和资产安全,…...

    2024/5/8 20:33:13
  10. VB.net WebBrowser网页元素抓取分析方法

    在用WebBrowser编程实现网页操作自动化时,常要分析网页Html,例如网页在加载数据时,常会显示“系统处理中,请稍候..”,我们需要在数据加载完成后才能继续下一步操作,如何抓取这个信息的网页html元素变化&…...

    2024/5/9 3:15:57
  11. 【Objective-C】Objective-C汇总

    方法定义 参考:https://www.yiibai.com/objective_c/objective_c_functions.html Objective-C编程语言中方法定义的一般形式如下 - (return_type) method_name:( argumentType1 )argumentName1 joiningArgument2:( argumentType2 )argumentName2 ... joiningArgu…...

    2024/5/7 16:57:02
  12. 【洛谷算法题】P5713-洛谷团队系统【入门2分支结构】

    👨‍💻博客主页:花无缺 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 本文由 花无缺 原创 收录于专栏 【洛谷算法题】 文章目录 【洛谷算法题】P5713-洛谷团队系统【入门2分支结构】🌏题目描述🌏输入格…...

    2024/5/7 14:58:59
  13. 【ES6.0】- 扩展运算符(...)

    【ES6.0】- 扩展运算符... 文章目录 【ES6.0】- 扩展运算符...一、概述二、拷贝数组对象三、合并操作四、参数传递五、数组去重六、字符串转字符数组七、NodeList转数组八、解构变量九、打印日志十、总结 一、概述 **扩展运算符(...)**允许一个表达式在期望多个参数&#xff0…...

    2024/5/8 20:58:56
  14. 摩根看好的前智能硬件头部品牌双11交易数据极度异常!——是模式创新还是饮鸩止渴?

    文 | 螳螂观察 作者 | 李燃 双11狂欢已落下帷幕,各大品牌纷纷晒出优异的成绩单,摩根士丹利投资的智能硬件头部品牌凯迪仕也不例外。然而有爆料称,在自媒体平台发布霸榜各大榜单喜讯的凯迪仕智能锁,多个平台数据都表现出极度异常…...

    2024/5/9 1:35:21
  15. Go语言常用命令详解(二)

    文章目录 前言常用命令go bug示例参数说明 go doc示例参数说明 go env示例 go fix示例 go fmt示例 go generate示例 总结写在最后 前言 接着上一篇继续介绍Go语言的常用命令 常用命令 以下是一些常用的Go命令,这些命令可以帮助您在Go开发中进行编译、测试、运行和…...

    2024/5/8 1:37:35
  16. 用欧拉路径判断图同构推出reverse合法性:1116T4

    http://cplusoj.com/d/senior/p/SS231116D 假设我们要把 a a a 变成 b b b,我们在 a i a_i ai​ 和 a i 1 a_{i1} ai1​ 之间连边, b b b 同理,则 a a a 能变成 b b b 的充要条件是两图 A , B A,B A,B 同构。 必要性显然&#xff0…...

    2024/5/7 16:05:05
  17. 【NGINX--1】基础知识

    1、在 Debian/Ubuntu 上安装 NGINX 在 Debian 或 Ubuntu 机器上安装 NGINX 开源版。 更新已配置源的软件包信息,并安装一些有助于配置官方 NGINX 软件包仓库的软件包: apt-get update apt install -y curl gnupg2 ca-certificates lsb-release debian-…...

    2024/5/8 18:06:50
  18. Hive默认分割符、存储格式与数据压缩

    目录 1、Hive默认分割符2、Hive存储格式3、Hive数据压缩 1、Hive默认分割符 Hive创建表时指定的行受限(ROW FORMAT)配置标准HQL为: ... ROW FORMAT DELIMITED FIELDS TERMINATED BY \u0001 COLLECTION ITEMS TERMINATED BY , MAP KEYS TERMI…...

    2024/5/8 1:37:32
  19. 【论文阅读】MAG:一种用于航天器遥测数据中有效异常检测的新方法

    文章目录 摘要1 引言2 问题描述3 拟议框架4 所提出方法的细节A.数据预处理B.变量相关分析C.MAG模型D.异常分数 5 实验A.数据集和性能指标B.实验设置与平台C.结果和比较 6 结论 摘要 异常检测是保证航天器稳定性的关键。在航天器运行过程中,传感器和控制器产生大量周…...

    2024/5/9 1:42:21
  20. --max-old-space-size=8192报错

    vue项目运行时,如果经常运行慢,崩溃停止服务,报如下错误 FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory 因为在 Node 中,通过JavaScript使用内存时只能使用部分内存(64位系统&…...

    2024/5/8 1:37:31
  21. 基于深度学习的恶意软件检测

    恶意软件是指恶意软件犯罪者用来感染个人计算机或整个组织的网络的软件。 它利用目标系统漏洞,例如可以被劫持的合法软件(例如浏览器或 Web 应用程序插件)中的错误。 恶意软件渗透可能会造成灾难性的后果,包括数据被盗、勒索或网…...

    2024/5/8 1:37:31
  22. JS原型对象prototype

    让我简单的为大家介绍一下原型对象prototype吧! 使用原型实现方法共享 1.构造函数通过原型分配的函数是所有对象所 共享的。 2.JavaScript 规定,每一个构造函数都有一个 prototype 属性,指向另一个对象,所以我们也称为原型对象…...

    2024/5/8 12:44:41
  23. C++中只能有一个实例的单例类

    C中只能有一个实例的单例类 前面讨论的 President 类很不错,但存在一个缺陷:无法禁止通过实例化多个对象来创建多名总统: President One, Two, Three; 由于复制构造函数是私有的,其中每个对象都是不可复制的,但您的目…...

    2024/5/8 9:51:44
  24. python django 小程序图书借阅源码

    开发工具: PyCharm,mysql5.7,微信开发者工具 技术说明: python django html 小程序 功能介绍: 用户端: 登录注册(含授权登录) 首页显示搜索图书,轮播图&#xff0…...

    2024/5/8 1:37:29
  25. 电子学会C/C++编程等级考试2022年03月(一级)真题解析

    C/C++等级考试(1~8级)全部真题・点这里 第1题:双精度浮点数的输入输出 输入一个双精度浮点数,保留8位小数,输出这个浮点数。 时间限制:1000 内存限制:65536输入 只有一行,一个双精度浮点数。输出 一行,保留8位小数的浮点数。样例输入 3.1415926535798932样例输出 3.1…...

    2024/5/7 17:09:45
  26. 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...

    解析如下:1、长按电脑电源键直至关机,然后再按一次电源健重启电脑,按F8健进入安全模式2、安全模式下进入Windows系统桌面后,按住“winR”打开运行窗口,输入“services.msc”打开服务设置3、在服务界面,选中…...

    2022/11/19 21:17:18
  27. 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。

    %读入6幅图像(每一幅图像的大小是564*564) f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...

    2022/11/19 21:17:16
  28. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...

    win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面,在等待界面中我们需要等待操作结束才能关机,虽然这比较麻烦,但是对系统进行配置和升级…...

    2022/11/19 21:17:15
  29. 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...

    有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows,请勿关闭计算机”的提示,要过很久才能进入系统,有的用户甚至几个小时也无法进入,下面就教大家这个问题的解决方法。第一种方法:我们首先在左下角的“开始…...

    2022/11/19 21:17:14
  30. win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...

    置信有很多用户都跟小编一样遇到过这样的问题,电脑时发现开机屏幕显现“正在配置Windows Update,请勿关机”(如下图所示),而且还需求等大约5分钟才干进入系统。这是怎样回事呢?一切都是正常操作的,为什么开时机呈现“正…...

    2022/11/19 21:17:13
  31. 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...

    Win7系统开机启动时总是出现“配置Windows请勿关机”的提示,没过几秒后电脑自动重启,每次开机都这样无法进入系统,此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一:开机按下F8,在出现的Windows高级启动选…...

    2022/11/19 21:17:12
  32. 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...

    有不少windows10系统用户反映说碰到这样一个情况,就是电脑提示正在准备windows请勿关闭计算机,碰到这样的问题该怎么解决呢,现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法:1、2、依次…...

    2022/11/19 21:17:11
  33. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...

    今天和大家分享一下win7系统重装了Win7旗舰版系统后,每次关机的时候桌面上都会显示一个“配置Windows Update的界面,提示请勿关闭计算机”,每次停留好几分钟才能正常关机,导致什么情况引起的呢?出现配置Windows Update…...

    2022/11/19 21:17:10
  34. 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...

    只能是等着,别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚,只能是考虑备份数据后重装系统了。解决来方案一:管理员运行cmd:net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...

    2022/11/19 21:17:09
  35. 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?

    原标题:电脑提示“配置Windows Update请勿关闭计算机”怎么办?win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢?一般的方…...

    2022/11/19 21:17:08
  36. 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...

    关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!关机提示 windows7 正在配…...

    2022/11/19 21:17:05
  37. 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...

    钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...

    2022/11/19 21:17:05
  38. 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...

    前几天班里有位学生电脑(windows 7系统)出问题了,具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面,长时间没反应,无法进入系统。这个问题原来帮其他同学也解决过,网上搜了不少资料&#x…...

    2022/11/19 21:17:04
  39. 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...

    本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法,并在最后教给你1种保护系统安全的好方法,一起来看看!电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中,添加了1个新功能在“磁…...

    2022/11/19 21:17:03
  40. 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...

    许多用户在长期不使用电脑的时候,开启电脑发现电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机。。.这要怎么办呢?下面小编就带着大家一起看看吧!如果能够正常进入系统,建议您暂时移…...

    2022/11/19 21:17:02
  41. 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...

    配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!配置windows update失败 还原更改 请勿关闭计算机&#x…...

    2022/11/19 21:17:01
  42. 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...

    不知道大家有没有遇到过这样的一个问题,就是我们的win7系统在关机的时候,总是喜欢显示“准备配置windows,请勿关机”这样的一个页面,没有什么大碍,但是如果一直等着的话就要两个小时甚至更久都关不了机,非常…...

    2022/11/19 21:17:00
  43. 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...

    当电脑出现正在准备配置windows请勿关闭计算机时,一般是您正对windows进行升级,但是这个要是长时间没有反应,我们不能再傻等下去了。可能是电脑出了别的问题了,来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...

    2022/11/19 21:16:59
  44. 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...

    我们使用电脑的过程中有时会遇到这种情况,当我们打开电脑之后,发现一直停留在一个界面:“配置Windows Update失败,还原更改请勿关闭计算机”,等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢&#xff0…...

    2022/11/19 21:16:58
  45. 如何在iPhone上关闭“请勿打扰”

    Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...

    2022/11/19 21:16:57