Ja. Neben blockierenden Aufrufen stehen asynchrone Schnittstellen zur Verfügung: unter .NET auf Basis von Task, unter Java auf Basis von CompletableFuture.