开放的jdk项目"Loom“支持虚拟线程,它允许经典的IO阻塞API享受异步、反应堆、协同开发风格的巨大好处。
我在youtube上搜索了一下,我了解到虚拟线程最重要的魔力是这段视频中的“可调整大小的堆栈”。

这就是为什么可以创建和阻止数以百万计的虚拟线程。
我对如何实现“可调整大小的堆栈”非常感兴趣。
发布于 2022-05-10 19:07:08
虚拟线程必须基于实际线程运行。
必须更改所有阻塞API的实现,这称为虚拟线程友好。
当虚拟方法调用阻塞API时,虚拟线程将从实际线程中卸载,以便真正的线程能够继续运行其他没有阻塞的虚拟线程。
当虚拟线程被卸载时,当前堆栈的信息将被复制到堆中,它们被称为堆栈块对象。
当阻塞API完成后,虚拟线程将再次装入真正的线程,信息将从堆复制到堆栈,以便真正的线程能够继续运行。
https://stackoverflow.com/questions/70955447
复制相似问题