Minecraft 1.16 & 1.18+ bugfix/performance mod
Problem: - FileSystemWatchService threads accumulate over time (observed 17+ threads) - Threads cannot be interrupted during container shutdown due to unhandled parkNanos() - Container fails to stop gracefully, requiring force kill Root cause: - LockSupport.parkNanos() called without interruption handling - No shutdown detection mechanism - Threads continue polling file system even when JVM is terminating Changes: 1. Add AtomicBoolean shutdown flag to prevent new watch iterations during shutdown 2. Add proper thread interruption handling with graceful fallback to empty iterator 3. Register shutdown hook to set flag on JVM exit Testing: - Verified threads no longer accumulate after multiple config reloads - Container now responds to SIGTERM and stops within 5 seconds - CPU usage returns to normal after shutdown sequence |
||
|---|---|---|
| .github | ||
| annotation-processor | ||
| annotations | ||
| bin | ||
| buildSrc | ||
| doc | ||
| gradle | ||
| scripts | ||
| src/main | ||
| .gitignore | ||
| build.gradle.kts | ||
| CONTRIBUTING.md | ||
| gradle.properties | ||
| gradlew | ||
| gradlew.bat | ||
| LICENSE | ||
| README.md | ||
| release_line.txt | ||
| settings.gradle.kts | ||
ModernFix
A performance mod for modern Minecraft that significantly improves launch times, world load times, memory usage, etc.
Some fixes are based on prior work in various Forge PRs (check commit history and/or code comments). The config system is directly derived from Sodium and used under the terms of the LGPL-3.0 license.
Development builds (generally stable, but may occasionally have bugs)
- 1.16.5: https://nightly.link/embeddedt/ModernFix/workflows/gradle/1.16/Package.zip
- 1.18.2: https://nightly.link/embeddedt/ModernFix/workflows/gradle/1.18/Package.zip
- 1.19.2: https://nightly.link/embeddedt/ModernFix/workflows/gradle/1.19.2/Package.zip
- 1.20.1: https://nightly.link/embeddedt/ModernFix/workflows/gradle/1.20/Package.zip
- 1.20.2: https://nightly.link/embeddedt/ModernFix/workflows/gradle/1.20.2/Package.zip
YourKit supports open source projects with innovative and intelligent tools for monitoring and profiling Java and .NET applications. YourKit is the creator of YourKit Java Profiler, YourKit .NET Profiler, and YourKit YouMonitor.
Thanks to YourKit for providing a free license for this project.
