LeaseTracker
mill.exec.Execution.LeaseTracker
Tracks per-task read leases on the workspace lock and releases them once every transitive downstream task that depends on the holder has completed.
The transitive part matters because a direct downstream can forward PathRefs or other data from an upstream output to its own downstreams. Releasing the upstream read lease when only the direct downstream completes would let a concurrent launcher overwrite that output while a later transitive downstream may still read it.
Attributes
- Source
- Execution.scala
- Graph
-
- Supertypes
-
class Objecttrait Matchableclass Any
Members list
In this article