多线程异步执行讲解
異步實現
要想使用Spring的異步操作,需要先開啟異步操作,用@EnableAsync注解開啟,然后在對應的異步方法上添加注解@Async即可。
創建com.seckill.task.MultiThreadingCreateOrder類,在類中創建一個createOrder方法,并在方法上添加@Async,代碼如下:
@Component public class MultiThreadingCreateOrder {/**** 多線程下單操作*/@Asyncpublic void createOrder(){try {System.out.println("準備執行....");Thread.sleep(20000);System.out.println("開始執行....");} catch (InterruptedException e) {e.printStackTrace();}} }上面createOrder方法進行了休眠阻塞操作,我們在下單的方法調用createOrder方法,如果下單的方法沒有阻塞,繼續執行,說明屬于異步操作,如果阻塞了,說明沒有執行異步操作。
修改秒殺搶單SeckillOrderServiceImpl代碼,注入MultiThreadingCreateOrder,并調用createOrder方法,代碼如下:
?
超強干貨來襲 云風專訪:近40年碼齡,通宵達旦的技術人生總結
- 上一篇: RabbitMQ延时队列原理讲解
- 下一篇: 事务介绍