Wzór reaktora jest wyjaśniony w Wikipedii i jest nieco zbyt abstrakcyjny. Czy możesz opisać ten wzór w bardziej konkretny sposób? Idealnie z fragmentami kodu lub diagramami klas wysokiego poziomu opisującymi niektóre zastosowania wzorca reaktora.
design-patterns
Eleco
źródło
źródło
Odpowiedzi:
Możesz sprawdzić oryginalny opis go opisujący http://www.dre.vanderbilt.edu/~schmidt/PDF/reactor-siemens.pdf
źródło
Reaktor umożliwia wydajne przetwarzanie wielu zadań, które blokują się (powiedzmy z powodu operacji we / wy) przy użyciu pojedynczego wątku. Reaktor zarządza pulą programów obsługi i uruchamia pętlę zdarzeń. Kiedy jest wezwany do wykonania zadania, łączy je z nowym lub nieobsadzonym programem obsługi, czyniąc je aktywnym. Pętla zdarzeń (1) znajduje wszystkie programy obsługi, które są aktywne i odblokowane (lub deleguje to do implementacji programu rozsyłającego) (2) wykonuje każdy z tych znalezionych programów obsługi sekwencyjnie, dopóki nie ukończą lub nie osiągną punktu, w którym są blokowane. Ukończone moduły obsługi stają się nieaktywne i puste do ponownego użycia, podczas gdy zablokowane aktywne moduły obsługi dają możliwość kontynuowania pętli zdarzeń. (3) Powtarza się od kroku (1)
źródło