use java8 functional
This commit is contained in:
@@ -1,14 +1,11 @@
|
||||
package io.github.ehlxr.did;
|
||||
|
||||
import io.github.ehlxr.did.client.SdkClient;
|
||||
import io.github.ehlxr.did.common.Result;
|
||||
import io.github.ehlxr.did.common.SdkProto;
|
||||
import org.junit.After;
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
|
||||
import java.util.concurrent.CountDownLatch;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import java.util.stream.IntStream;
|
||||
|
||||
/**
|
||||
* @author ehlxr
|
||||
@@ -20,7 +17,7 @@ public class DidSdkTest {
|
||||
@Before
|
||||
public void init() {
|
||||
// client = new SdkClient("127.0.0.1", 16831, 5000);
|
||||
client = SdkClient.newBuilder().build();
|
||||
client = SdkClient.newBuilder().timeoutMillis(5000).build();
|
||||
client.start();
|
||||
}
|
||||
|
||||
@@ -32,27 +29,26 @@ public class DidSdkTest {
|
||||
@Test
|
||||
public void didSdkTest() throws Exception {
|
||||
// 测试同步请求
|
||||
for (int i = 0; i < NUM; i++) {
|
||||
Result<SdkProto> resultProto = client.invokeSync();
|
||||
System.out.println(resultProto);
|
||||
}
|
||||
System.out.println("invokeync test finish");
|
||||
IntStream.range(0, NUM).parallel().forEach(i -> System.out.println(client.invokeSync()));
|
||||
|
||||
// System.out.println("invokeync test finish");
|
||||
|
||||
// 测试异步请求
|
||||
final CountDownLatch countDownLatch = new CountDownLatch(NUM);
|
||||
for (int i = 0; i < NUM; i++) {
|
||||
client.invokeAsync(responseFuture -> {
|
||||
countDownLatch.countDown();
|
||||
System.out.println(responseFuture.getSdkProto());
|
||||
});
|
||||
}
|
||||
countDownLatch.await(10, TimeUnit.SECONDS);
|
||||
System.out.println("invokeAsync test finish");
|
||||
// final CountDownLatch countDownLatch = new CountDownLatch(NUM);
|
||||
// IntStream.range(0, NUM).forEach(i ->
|
||||
// Try.of(() -> client.invokeAsync(responseFuture -> {
|
||||
// System.out.println(responseFuture.getSdkProto());
|
||||
// countDownLatch.countDown();
|
||||
// })).trap(Throwable::printStackTrace).run());
|
||||
//
|
||||
// //noinspection ResultOfMethodCallIgnored
|
||||
// countDownLatch.await(10, TimeUnit.SECONDS);
|
||||
// System.out.println("invokeAsync test finish");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testInvoke() {
|
||||
System.out.println(client.invoke());
|
||||
// System.out.println(client.invoke());
|
||||
|
||||
client.setTimeoutMillis(3000);
|
||||
System.out.println(client.invoke());
|
||||
|
||||
Reference in New Issue
Block a user