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

会计公司网站模板下载wordpress标签翻转

会计公司网站模板下载,wordpress标签翻转,世界500强企业查询入口,一站式进货平台网站建设I often take exercise. Why only yesterday I had breakfast in bed. 在Java 21中#xff0c;引入了虚拟线程#xff08;Virtual Threads#xff09;来简化和增强并发性#xff0c;这使得在Java中编程并发程序更容易、更高效。 虚拟线程#xff0c;也称为“用户模式线程… I often take exercise. Why only yesterday I had breakfast in bed. 在Java 21中引入了虚拟线程Virtual Threads来简化和增强并发性这使得在Java中编程并发程序更容易、更高效。 虚拟线程也称为“用户模式线程user-mode threads”或“纤程fibers”。该功能旨在简化并发编程并提供更好的可扩展性。虚拟线程是轻量级的这意味着它们可以比传统线程创建更多数量并且开销要少得多。这使得在自己的线程中运行单独任务或请求变得更加实用即使在高吞吐量的程序中也是如此。 创建和使用虚拟线程 在Java 21中创建和使用虚拟线程有多种方法 1. 使用静态构建器方法 Thread.startVirtualThread方法将可运行对象作为参数来创建并立即启动虚拟线程具体如下代码 Runnable runnable () - {System.out.println(Hello, www.didispace.com); };// 使用静态构建器方法 Thread virtualThread Thread.startVirtualThread(runnable);也可以使用Thread.ofVirtual()来创建这里还可以设置一些属性比如线程名称。具体如下代码 Thread.ofVirtual().name(didispace-virtual-thread).start(runnable); 2. 与ExecutorService结合使用 从Java 5开始就推荐开发人员使用ExecutorServices而不是直接使用Thread类了。现在Java 21中引入了使用虚拟线程所以也有了新的ExecutorService来适配看看下面的例子 Runnable runnable () - {System.out.println(Hello, www.didispace.com); };try (ExecutorService executorService Executors.newVirtualThreadPerTaskExecutor()) {for (int i 0; i 100; i) {executorService.submit(runnable);} }上述代码在try代码块中创建了一个ExecutorServices用来为每个提交的任务创建虚拟线程。 3. 使用虚拟线程工厂 开发者还可以创建一个生成虚拟线程的工厂来管理具体看下面的例子例子 Runnable runnable () - {System.out.println(Hello, www.didispace.com); };ThreadFactory virtualThreadFactory Thread.ofVirtual().name(didispace, 0).factory();Thread factoryThread virtualThreadFactory.newThread(runnable); factoryThread.start;这段代码创建了一个虚拟线程工厂每个虚拟线程都会以didispace为前缀、以数字结尾从0开始累加的名称。 虚拟线程实现原理 虚拟线程是一种轻量级用户模式线程这种线程是由Java虚拟机调度而不是操作系统。虚拟线程占用空间小任务切换开销几乎可以忽略不计因此可以极大量地创建和使用。总体来看虚拟线程实现如下 virtual thread continuation scheduler虚拟线程会把任务一般是java.lang.Runnable包装到一个Continuation实例中 当任务需要阻塞挂起的时候会调用Continuation的yield操作进行阻塞当任务需要解除阻塞继续执行的时候Continuation会被继续执行 Scheduler也就是执行器会把任务提交到一个载体线程池中执行 执行器是java.util.concurrent.Executor的子类虚拟线程框架提供了一个默认的ForkJoinPool用于执行虚拟线程任务 下文会把carrier thread称为载体线程指的是负责执行虚拟线程中任务的平台线程或者说运行虚拟线程的平台线程称为它的载体线程 操作系统调度系统线程而Java平台线程与系统线程一一映射所以平台线程被操作系统调度但是虚拟线程是由JVM调度。JVM把虚拟线程分配给平台线程的操作称为mount挂载反过来取消分配平台线程的操作称为unmount卸载 mount操作虚拟线程挂载到平台线程虚拟线程中包装的Continuation栈数据帧或者引用栈数据会被拷贝到平台线程的线程栈这是一个从堆复制到栈的过程unmount操作虚拟线程从平台线程卸载大多数虚拟线程中包装的Continuation栈数据帧会留在堆内存中 小结 上面我们介绍了虚拟线程的创建和使用而我们大多数Java开发者都基于Spring来开发具体业务应用所以很多场景下可能都不太涉及手工创建的操作。所以对于虚拟线程的概念你只需要有一个基本的认识。所以在文章的最后做一个小结以方便大家理解和记忆 虚拟线程是由JVM管理的轻量级线程。虚拟线程不需要任何显式分配或调度。虚拟线程非常适合I/O密集型任务或需要大量并行性的任务。虚拟线程也可以用来实现异步操作。 另外值得注意的是虽然虚拟线程可以在并发性和可扩展性方面提供显着的帮助但它们并不总是适合所有场景。有些需要大量计算的任务并不一定在虚拟线程中运行更好因为虚拟线程也有上下文切换的开。具体情况还是需要通过测试评测以找到最优解。
http://www.w-s-a.com/news/399427/

相关文章:

  • 济南比较好的网站建设公司邢台信息网123
  • 双峰网站建设漳州优化网站建设
  • app和网站开发的成本虚拟主机是啥
  • 想做一个自己设计公司的网站怎么做的销售培训
  • 南昌网站建设模板合作凡客app哪去了
  • 有免费做网站的吗建设互联网站
  • 北京市保障房建设投资中心网站淄博哪个网站做房屋出赁好
  • 如何做网站的优化网站开发怎么收费
  • 网站的关键词怎么选择2345实用查询
  • 免费的制作网站做图剪片文案网站app接单
  • 中国有多少网站有多少域名上海网站建设网页制作邢台
  • 网站 数据报表如何做室内设计联盟官方网站入口
  • 怎样建设网站论文合肥做网站的软件公司
  • 收款后自动发货的网站是怎么做的怎么看网站后台网页尺寸
  • 谷歌seo引擎优化宁波seo关键词
  • 外贸网站建设需要注意什么seo课程
  • 做信息图网站网站建设的软件介绍
  • 网站开发语言数据库有几种魏县审批建设的网站
  • 北京公司网站建设推荐海口建设
  • 不懂编程如何做网站婚礼网站模板
  • 像京东一样的网站wordpress入门视频教程7 - 如何在文章里加入视频和音乐
  • 惠州网站建设排名wordpress3万篇文章优化
  • 创建网站的三种方法北京建王园林工程有限公司
  • jsp网站建设模板下载十大免费excel网站
  • 网络公司网站图片网站建立好了自己怎么做优化
  • 云主机是不是可以搭建无数个网站百度快速seo优化
  • 房地产怎么做网站推广建立音乐网站
  • 川畅科技联系 网站设计网站开发的教学视频
  • 为什么学网站开发凡科登陆
  • 设计师常备设计网站大全中山精品网站建设信息