Go already gives better tools than Java for managing native memory through cgo, which is a far less painful interface than JNI (believe me, I&#x27;ve written a lot of JNI for Hadoop).  Go also has value types which is a huge win for managing memory.  (And even if Java gets value types later, the whole Java standard library will still take years to change to use them, if it ever does.)<p>Plus, sun.misc.Unsafe is probably going away, according to Oracle.  <a href="http:&#x2F;&#x2F;www.infoq.com&#x2F;news&#x2F;2015&#x2F;07&#x2F;oracle-plan-remove-unsafe" rel="nofollow">http:&#x2F;&#x2F;www.infoq.com&#x2F;news&#x2F;2015&#x2F;07&#x2F;oracle-plan-remove-unsafe</a><p>From what I&#x27;ve heard, Azul has a great GC, but the throughput is extremely low.  It&#x27;s really only a practical solution for high frequency finance and places like that where latency is everything, and throughput is nothing (can buy another 100 servers or high end hardware.)  Note: I&#x27;m talking about their software product which runs on vanilla hardware, not their hardware product, which I understand is far superior.<p>A lot of people on HN also seem to be taking the statement that maximum GC latency will be 10ms as a statement that there will often be 10ms pauses.  Hopefully, the average latency will be far less, in the 1 or 2ms, and 10ms will be something that only happens on huge heaps in certain conditions.  This should be similar to what has happened on Android, where GC pauses are pretty rare and typically only 1 or 2ms.