小编Adr*_*ith的帖子

Java 11 HttpClient - 什么是 HttpClient 与并发 HttpRequest 的最佳比率

在下面的示例中,我创建了一个 Java 11 httpClient,然后创建了多个并发 HttpRequest。

  1. 这是不好的做法吗?
  2. 每个 HttpRequest 都应该有自己的 HttpClient 吗?
  3. HttpClient 可以拥有的 HttpRequest 数量是否有上限?

代码

    private static void httpClientExample(){
    
    HttpClient httpClient = HttpClient.newHttpClient();

    System.out.println("TP1");

    var task1 = httpClient.sendAsync(HttpRequest.newBuilder()
            .uri(URI.create("https://www.bing.com/"))
            .build(), HttpResponse.BodyHandlers.ofString())
            .thenApply(HttpResponse::uri).thenAccept(System.out::println);

    var task2 = httpClient.sendAsync(HttpRequest.newBuilder()
            .uri(URI.create("https://openjdk.java.net/"))
            .build(), HttpResponse.BodyHandlers.ofString())
            .thenApply(HttpResponse::uri).thenAccept(System.out::println);
    
    var task3 = httpClient.sendAsync(HttpRequest.newBuilder()
            .uri(URI.create("https://www.google.co.uk/"))
            .build(), HttpResponse.BodyHandlers.ofString())
            .thenApply(HttpResponse::uri).thenAccept(System.out::println);


    System.out.println("Requests Sent");

    try {
        Thread.sleep(5000);
    } catch (InterruptedException e) {
        e.printStackTrace();
    }

    System.out.println("Main Thread Completed");
    }
Run Code Online (Sandbox Code Playgroud)

java java-http-client java-11

3
推荐指数
1
解决办法
917
查看次数

如何在 Flutter 中启用/禁用 ElevatedButton

有人知道如何启用/禁用 Flutter ElevatedButton 吗?我已经查看了文档,但看不到任何明显的内容。

class IcoButton extends StatelessWidget {
    IcoButton(
      {@required this.lbl,
      @required this.col,
      @required this.ico,
      @required this.onPress});

  final String lbl;
  final FaIcon ico;
  final MaterialColor col;
  final Function onPress;

  @override
  Widget build(BuildContext context) {
    return ElevatedButton.icon(
      label: Text(lbl),
      icon: ico,
      style: ElevatedButton.styleFrom(
        primary: col,
        onPrimary: Colors.white,
        minimumSize: Size(160.0, 60.0),
        textStyle: TextStyle(
          fontSize: 24,
        ),
      ),
      onPressed: onPress,
    );
     }
    }
Run Code Online (Sandbox Code Playgroud)

flutter

1
推荐指数
3
解决办法
2081
查看次数

标签 统计

flutter ×1

java ×1

java-11 ×1

java-http-client ×1