Bir olay döngüsünde Node.js görevinin önceliğini uygulayabilmenin herhangi bir yolu var mı? nodejs olay döngüsünde bulunan göreve öncelik atamak istiyorum.
Bir olay döngüsünde, aynı önceliğe sahip olan ve ardından önceliği son beş işten daha yüksek olan bir sonraki işin alındığı 5 iş A, B, C, D, E olduğunu varsayalım. Sonra olay döngüsü bu yüksek öncelikli işi yürütmeye başlar.Bir olay döngüsünde nodejs görevlerine öncelik atama
7
A
cevap
1
node.js'daki olay döngüsü öncelikleri desteklemez. Bazı belgelere bakın:
Kısa onu yeniden yazmak, ben çok hakkında yapabileceği olduğunu sanmıyorum.
2
Bir öncelik sırası kullanmalısınız, bu sayede gibi bir şey priorityqueuejs
Eğer maksimum öncelikli bir öğe sıradan çıkarma ve çalıştırmak.
Bazı kod:
'use strict';
var PriorityQueue = require('priorityqueuejs');
var queue = new PriorityQueue(function(a, b) {
return a.value - b.value;
});
queue.enq({ value: 10, func: function() { console.log("PRIORITY: 10"); } });
queue.enq({ value: 500, func: function() { console.log("PRIORITY: 500"); } });
queue.enq({ value: 300, func: function() { console.log("PRIORITY: 300"); } });
queue.enq({ value: 100, func: function() { console.log("PRIORITY: 100"); } });
(function executeNext() {
if(queue.size()) {
var next = queue.deq();
next.func();
if(queue.size()) {
setTimeout(executeNext, 0);
}
}
})();
Ve çıktısı:
İştePRIORITY: 500
PRIORITY: 300
PRIORITY: 100
PRIORITY: 10
executeNext
işlevi sonraki en öncelikli öğesi ayıklar ve çalıştırır olduğunu.
İlgili konular
- 1. AIO ve epoll'u tek bir olay döngüsünde nasıl kullanıyorsunuz?
- 2. Node.js olay döngüsünde (etkin) zamanlayıcı sayımı elde edin
- 3. Öncelik ThreadPoolExecutor
- 4. Çoklu Satır foreach döngüsünde
- 5. onCreateOptionsMenu bir Parça Yaşam Döngüsünde
- 6. java.lang.NumberFormatException: null - bir do döngüsünde
- 7. Android'de öncelik dönüşümü gerçekleşebilir
- 8. Çift uçlu öncelik sırası
- 9. ANTLR3 lexer öncelik
- 10. Websphere Paylaşılan Kütüphaneler "Öncelik"?
- 11. Düzen kısıtlamalarına öncelik ekleme
- 12. JavaScript operatör öncelik technicality
- 13. Amaç-c Öncelik Sırası
- 14. Operatör Öncelik - Ekspresyon Değerlendirmesi
- 15. iki öncelik sırasını birleştirin
- 16. Değişkin şablon yapıcı öncelik
- 17. Nuget packageSources öncelik
- 18. Python kullanarak bir öncelik sırasını doldurma Kravat
- 19. Bir iteritems döngüsünde bir değeri geçersiz kılma
- 20. Bir mutex değişkeninin bir while döngüsünde işlenmesi
- 21. Nodejs: nodejs içinde Kineticjs
- 22. Öncelikli ağaç, v, u bir çocuk olduğunda, öncelik (u) ≥ öncelik (v)
- 23. Nodejs
- 24. nodejs
- 25. NodeJS
- 26. NodeJS
- 27. NodeJs
- 28. NodeJS
- 29. NodeJS
- 30. Booleanları for döngüsünde kullanma
Bir kod örneği yardımcı olur. – tikider
Eklenmiş örnek Lütfen kontrol edin. – Sanket
Bunu neden yapmalısınız? – neelsg