Wisp icon indicating copy to clipboard operation
Wisp copied to clipboard

Use virtual threads instead of a thread pool

Open amanteaux opened this issue 3 years ago • 1 comments

Virtual threads are becoming a reality since Java 19, though currently they are only available through preview usage of the JVM: --enable-preview.

When virtual threads are fully part of the JVM, Wisp core should be rewritten to use virtual threads:

  • It should actually consume less hardware resources
  • The core code will be smaller and easier to maintain
  • There will be no more need to configure the thread pool since virtual thread pooling is not recommended

amanteaux avatar Dec 15 '22 13:12 amanteaux

For now this is paused because virtual threads must use only code that is not dependent on the synchronized keyword. Since this keyword is used widely in the JDK itselft, it is not safe enough to rely on virtual threads. Especially when the gains are not clear. When this feature is implemented, a benchmark needs to clarify the gains of switching to virtual threads.

amanteaux avatar Aug 30 '24 11:08 amanteaux