Foundational work for Future Memory usage improvements
This commit doesn't do much on its own, but adds a new Java Cleaner API that lets us hook into Garbage Collector events to reclaim pooled objects and return them to the pool. Adds framework for Network Packets to know when a packet has finished dispatching to get an idea when a packet is done sending to players. Rewrites PooledObjects impl to properly respect max pool size and remove almost all risk of contention. Bumps the Paper Async Task Queue to use 2 threads, and properly shuts it down on shutdown.
This commit is contained in:
@@ -56,6 +56,19 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
|
||||
<scope>compile</scope>
|
||||
</dependency>
|
||||
@@ -0,0 +0,0 @@
|
||||
<version>7.3.1</version>
|
||||
<scope>compile</scope>
|
||||
</dependency>
|
||||
+ <dependency>
|
||||
+ <!-- wrapper to use either java 8 sun cleaner or java9+ official cleaner -->
|
||||
+ <groupId>co.aikar</groupId>
|
||||
+ <artifactId>cleaner</artifactId>
|
||||
+ <version>1.0-SNAPSHOT</version>
|
||||
+ </dependency>
|
||||
<!-- deprecated API depend -->
|
||||
<dependency>
|
||||
<groupId>com.googlecode.json-simple</groupId>
|
||||
@@ -0,0 +0,0 @@
|
||||
|
||||
<!-- This builds a completely 'ready to start' jar with all dependencies inside -->
|
||||
<build>
|
||||
|
||||
Reference in New Issue
Block a user