Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Can someone explain what these virtual threads are in 2 sentences please?


Why two sentences? Maybe you should ask ChatGPT if you want explanations with specific length requirements.

Anyway it's pretty simple really. A generic thread is bunch of stack frames (with their associated local variables). A standard OS thread is under the control of the kernel scheduler which decides whether the thread runs and makes progress or not. The VirtualThread in Java is just a thread which is not directly mapped to the OS thread scheduler but exists as a user space object that can be scheduled by a (Java implemented) scheduler. It's basically just a call stack with its local variables, but one that only steps forward when an OS thread of the scheduler decides to step it.


They are not real threads. That is, the CPU is not context switching them but jvm running them in async.

Usually threads were also used for long running io but not cpu intensive tasks. It's recommended to use virtual threads for such scenarios now


Thanks!

> Why two sentences? Maybe you should ask ChatGPT if you want explanations with specific length requirements.

As you can see, people can do it better. I put a limit on it because I didn't want an explanation of what threads are, just of the difference.


The post you replied to had four sentences. (But two paragraphs).


The explanation had two sentences :)

Edit: why are some commenters on HN so literal minded anyway? This is free form chat not code specs. You could have read "2 sentences" as "concise", you know...




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: