src/Pure/Concurrent/multithreading.scala
changeset 79603 9f002cdb6b8d
child 79604 0e8ac7db1f4d
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/Pure/Concurrent/multithreading.scala	Wed Feb 14 14:16:56 2024 +0100
@@ -0,0 +1,17 @@
+/*  Title:      Pure/Concurrent/multithreading.scala
+    Author:     Makarius
+
+Multithreading in Isabelle/Scala.
+*/
+
+package isabelle
+
+
+object Multithreading {
+  /* max_threads */
+
+  def max_threads(): Int = {
+    val m = Value.Int.unapply(System.getProperty("isabelle.threads", "0")) getOrElse 0
+    if (m > 0) m else (Host.num_cpus() max 1) min 8
+  }
+}