秒杀代码

2023-05-10  本文已影响0人  心笙共鸣

import java.io.IOException;
import java.net.HttpURLConnection;
import java.net.URL;

public class RequestThread implements Runnable {
private String url;

public RequestThread(String url) {
    this.url = url;
}

@Override
public void run() {
    try {
        URL targetUrl = new URL(url);
        HttpURLConnection connection = (HttpURLConnection) targetUrl.openConnection();
        connection.setRequestMethod("GET");
        connection.connect();
        int responseCode = connection.getResponseCode();
        System.out.println("Response code: " + responseCode);
    } catch (IOException e) {
        e.printStackTrace();
    }
}

public static void main(String[] args) {
    String url = "http://example.com/target";
    for (int i = 0; i < 100; i++) {
        new Thread(new RequestThread(url)).start();
    }
}

}
在上述代码中,我们创建了一个RequestThread类,实现了Runnable接口,用于执行HTTP请求。在main方法中,我们创建了100个线程,并启动它们,每个线程都执行一次HTTP请求。这样就可以模拟100个用户同时访问网站的情况,以测试网站的性能和稳定性。

需要注意的是,在多线程环境中,可能会存在线程安全问题,因此需要注意对共享资源的访问,以避免出现竞态条件等问题。在上述代码中,我们没有使用共享资源,因此不存在线程安全问题。如果您的代码中涉及到共享资源,需要采取相应的线程安全措施,如使用锁、原子变量

上一篇 下一篇

猜你喜欢

热点阅读