当前位置:首页 > 每日看点 > 正文内容

JDK21中,虚拟线程能够完全代替线程吗?

卡卷网7个月前 (01-09)每日看点116

<>JDK21的虚拟线程(VirtualThread)在生产环境中不建议使用,等下一个LTS版本。

JDK21的实现,虚拟线程执行synchronized代码块可能会pin住线程。虚拟线程进入在synchronized代码块里被阻塞,执行虚拟线程的线程本应该切换执行其它虚拟线程,继续工作。但是JDK21的实现,在这种情况下并不能切换成其它虚拟线程,导致线程被阻塞。而JVM默认只会启用少量的线程来执行虚拟线程,可能导致(负责执行虚拟线程的)线程全部被阻塞,cpu啥都不执行,就傻等着。特别是等待IO响应等耗时的locking作。

如果代码里没有synchronized关键(可以是用ReentrantLock重写synchronized的代码),或者有synchronized关键字,但是synchronized代码里,没有长时间的阻塞调用,没有频繁的阻塞调用,这种情况下生产环境也可以使用虚拟线程。但是,这种情况一般难以保证。我们自己写的代码可以特别注意,但是很难保证其它组员,很难保证依赖的包里没有。

文档中关于虚拟线程synchronizedpinning问题的说明:CoreLiraries

扫描二维码推送至手机访问。

版权声明:本文由卡卷网发布,如需转载请注明出处。

本文链接:https://www.kajuan.net/ttnews/2025/01/7692.html

分享给朋友:

相关文章

有了Istio,开发还需要微服务架构吗?

有了Istio,开发还需要微服务架构吗?

Istio 是一个开源的服务网格(Service Mesh),通过它可以实现对服务间通信的管理和监控。对于那些本身没有设计为具备安全功能的传统应用程序,Istio 可以提供一个“透明”的安全保护层,而不需要对应用本身进行任何代码修改。 I...

你每天用来涨知识的手机应用程序有哪些?

你每天用来涨知识的手机应用程序有哪些?

经过深度使用和测评,从100个APP中选出的这35个超实用的app,每一个都是最硬核最有料的涨知识神器!每天打开看看,能让你提神醒脑,眼界大开,成为朋友聚会上的话题王者!双击屏幕取走哦~先放上全部APP目录,有新闻资讯类、英语学习类、读书类...

小米15就要来了,不知道小米15值不值得买?

小米15就要来了,不知道小米15值不值得买?

俗话说得好,好饭不怕晚,看似有点姗姗来迟的小米15系列,一官宣就迅速登上热搜。在此次小米14发布会上,雷军曾说过小米14将是最后一代3999起的旗舰,那么这一次涨价了的小米15,值不值得买呢?下面为大家总结一下小米15将会有哪些升级点:软件...

鸿蒙到底是不是安卓套壳?

鸿蒙到底是不是安卓套壳?

把它是不是套壳先放在一边吧。我讲一个事情,大家自己判断。华为有一个应用,叫手机管家。这个手机管家对一些系统底层设置有影响:比如华为从 EMUI 9 开始不允许将第三方启动器设置为默认启动器,依靠的就是这个手机管家。为什么这么说呢?在网上搜索...

如何做电商行业?

如何做电商行业?

“如何做电商*开网店”跟“如何找老婆”一样,没概况条件、没明确标准,就是扯犊子。我把话题具体一点说:具备“两三万”启动资金、掌握“选品+上架优化”基础技能,小则月入三五千、多则上万。跟摆地摊一样,有进货的钱、也不怕苦不怕累、稍微有点生意头脑...

华为纯血鸿蒙,从此天下三分了吗?

华为纯血鸿蒙,从此天下三分了吗?

万众期待的纯血版 HarmonyOS NEXT 终于是端上来了,主打一个自研,从里到外,从内核到架构,都是自研。用户的激情已经被点燃,可见大家对于纯血鸿蒙的期待,但是鸿蒙系统能不能真正与安卓、iOS三分天下呢?目前来说,还为时过早。iOS和...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。