1. Appel asynchrone
Les appels asynchrones sont d'exécuter des méthodes de grande envergure sans bloquer le thread principal
2. Asynchrone régulier
Implémenté en ouvrant un nouveau fil
3. Activer les méthodes asynchrones de Springboot
Nécessite 4 commentaires
1. @ perteasync active asynchrone
2. @ Registre des composants composants asynchrones
3. @ Méthode asynchrone annotation asynchrone
4. @ Injection automatique de composants asynchrones
4. Faites un appel asynchrone
1. Premièrement, marquez les asynchrones sur une classe de configuration
2. Créez ensuite une classe de composants asynchrones, tout comme le service ou le contrôleur, étiqueté avec le composant, et le service est OK.
3. Créez une méthode asynchrone dans la classe et marquez-la avec la balise asynchrone. Cette méthode doit être une méthode d'instance.
4. Ensuite, c'est la même chose que l'injection du service.
5. Transactions asynchrones
Il est inutile d'étiqueter @Transactional sur la méthode asynchrone.
Le nom @Transactional sur le service appelé par la méthode asynchrone est valide.
6. Call interne de la méthode asynchrone
Les méthodes asynchrones ne prennent pas en charge les appels internes, c'est-à-dire que les méthodes asynchrones ne peuvent pas être écrites à l'intérieur de la classe qui doit être appelée.
Par exemple, la classe A a A, B et C. B a une annotation asynchrone. À l'heure actuelle, l'appel asynchrone de A à B n'est pas valide.
7. Pourquoi une méthode asynchrone doit-elle être une méthode d'instance
Parce que la méthode statique ne peut pas être remplacée. Parce que le principe d'implémentation de la méthode asynchrone @async est d'injecter une classe proxy dans un haricot, qui hérite du haricot et doit écraser la méthode asynchrone et l'exécuter.
Ensuite, cette chose sera placée dans une file d'attente maintenue par le printemps. Attendez que le pool de threads lise et exécute.