better Mono wrapper and get groovy with Gradle

This commit is contained in:
WhatCats
2024-03-29 18:53:43 +01:00
parent 8d1ed04b1d
commit 7763f1e40b
15 changed files with 78 additions and 248 deletions

View File

@@ -37,14 +37,13 @@ public abstract class AbstractPromise<T> implements Promise<T> {
@Override
public T join(long timeoutMillis) throws TimeoutException {
PromiseCompletion<T> completion = this.completion.get();
if (completion != null) return joinCompletion(completion);
PromiseCompletion<T> completion;
long start = System.currentTimeMillis();
long remainingTimeout = timeoutMillis;
synchronized (this.completion) {
while (completion == null && remainingTimeout > 0){
completion = this.completion.get();
while (completion == null && remainingTimeout > 0) {
try {
this.completion.wait(remainingTimeout);
} catch (InterruptedException e) {