java 多线程中获取service服务
时间: 2024-01-27 12:14:19 浏览: 26
在 Java 多线程中获取 service 服务,通常可以通过以下步骤实现:
1. 创建一个服务接口,定义服务方法
2. 创建一个服务实现类,实现服务接口
3. 在服务实现类中添加 synchronized 关键字,确保线程安全
4. 在主线程中创建服务实例,并使用多线程方式调用服务方法
5. 在多线程中使用 synchronized 关键字,确保线程安全
以下是一个示例代码:
```
public interface MyService {
public void doSomething();
}
public class MyServiceImpl implements MyService {
@Override
public synchronized void doSomething() {
// do something here
}
}
public class MainThread {
public static void main(String[] args) {
MyService myService = new MyServiceImpl();
Thread t1 = new Thread(new Runnable() {
@Override
public void run() {
synchronized (myService) {
myService.doSomething();
}
}
});
Thread t2 = new Thread(new Runnable() {
@Override
public void run() {
synchronized (myService) {
myService.doSomething();
}
}
});
t1.start();
t2.start();
}
}
```
在上述代码中,我们创建了一个 MyService 接口和一个 MyServiceImpl 实现类。实现类中的 doSomething() 方法添加了 synchronized 关键字,确保线程安全。
在主线程中创建了 MyServiceImpl 实例,并使用多线程方式调用服务方法。在多线程中使用了 synchronized 关键字,确保线程安全。