So I recently started using Netty for my applications client/server communication and I discovered I loved the idea of listenable
Futures. I wondered why I didn't know about Java being able to do this, and, sure enough, it cannot.
After some searching I realized that this is a feature provided by Guava's concurrency tools, which got me skimming through it's user guide. It seems awesome, but I have some concerns:
- I already have a decent amount of code that uses JDK concurrency. How hard will it be to migrate over?
- What is the risk of starting to become a "Guava programmer" so to speak? How difficult will it be to bounce back and forth between doing things the Guava way and the core Java way?
- What potential harm could there be if, in an existing project, I write new classes with Guava classes without migrating the rest of the code over?
- Is there a good guide for slowly beginning to use Guava features without having to stop doing my actual job to train myself for a few days/weeks?
- Is there anything else I should know in advance that I haven't already thought of?