mirror of https://github.com/sbt/sbt.git
Zinc frequently needs to check the library classpath to ensure that class names are defined in a given jar. There is a cost to looking up the class names in the jar so it's a benefit to cache this across runs so that we don't have to redo the same work every time. More importantly, in testing with the latest sbt HEAD, I found that sbt would crash fairly frequently because it ran out of direct memory, which is used by nio to read and write to native memory without copying. The direct memory area is shared with the java heap and if it reaches the limit, the jvm crashes hard as though kill -9 was invoked. After caching the entries, I stopped seeing crashes. |
||
|---|---|---|
| .. | ||
| src | ||
| NOTICE | ||