写一个线程池发短信的例子
时间: 2023-11-17 21:50:38 浏览: 34
好的,以下是一个简单的线程池发送短信的例子(Java代码):
```java
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
public class SmsThreadPool {
private static final int THREAD_POOL_SIZE = 5;
private ExecutorService executor = null;
public SmsThreadPool() {
this.executor = Executors.newFixedThreadPool(THREAD_POOL_SIZE);
}
public void addSmsTask(final String phoneNumber, final String message) {
executor.execute(new Runnable() {
@Override
public void run() {
// 在这里编写发送短信的代码
// 可以调用第三方短信接口来完成发送短信的逻辑
// 例如:SmsSender.sendSms(phoneNumber, message);
}
});
}
public void stop() {
executor.shutdown();
}
}
```
使用该线程池发送短信的方法:
```java
SmsThreadPool smsThreadPool = new SmsThreadPool();
smsThreadPool.addSmsTask("13800000000", "您的验证码是123456");
smsThreadPool.addSmsTask("13900000000", "您的验证码是654321");
// ... 可以添加更多发送短信的任务
smsThreadPool.stop();
```
其中,`addSmsTask` 方法用于添加发送短信的任务,`stop` 方法用于停止线程池。这个例子使用了固定大小的线程池,可以根据实际需要调整线程池大小。需要注意的是,在实际应用中,调用第三方短信接口发送短信时要注意接口的并发限制,避免发送短信的过程中出现并发问题。