-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!2.eu.feeder.erj
e.net!feeder.erje.net!newsreader4.netcologne.de!news.netcologne.de!news.uzoreto
.com!eternal-september.org!feeder.eternal-september.org!reader01.eternal-septem
ber.org!.POSTED!not-for-mail
From: heby <h...@p...onet.pl>
Newsgroups: pl.comp.programming
Subject: Re: Integracja bibliotek event-based
Date: Tue, 9 Jun 2020 00:32:25 +0200
Organization: A noiseless patient Spider
Lines: 31
Message-ID: <rbmea1$76l$1@dont-email.me>
References: <5...@g...com>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Mon, 8 Jun 2020 22:32:34 -0000 (UTC)
Injection-Info: reader02.eternal-september.org;
posting-host="4c153b40bcfdd4da9ebc0d5378bd9412"; logging-data="7381";
mail-complaints-to="a...@e...org";
posting-account="U2FsdGVkX18Mgq4M8QCf80rysPQZ8tgS"
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101
Thunderbird/68.8.1
Cancel-Lock: sha1:xsLiIRycG1LqVDBn1THb8gB0WCs=
In-Reply-To: <5...@g...com>
Content-Language: en-US
Xref: news-archive.icm.edu.pl pl.comp.programming:214970
[ ukryj nagłówki ]On 08/06/2020 23:58, Maciej Sobczak wrote:
> Jakie jest poprawne rozwiązanie dla integracji tych 3 bibliotek?
To zależy co robią.
Jeśli ich zadaniem jest coś policzyć i zniknąć to masz dobrze.
Jesli ich zadaniem jest coś policzyć tylko jak będzie potrzeba to od
tego masz wsparcie OSa i jego pętlę komunikatów. Być może też jakieś
wątki pod spodem, ale klient o nich nie wie, bibliteka często też nie
wie. Ogólnie cooperative multitasking bazuje na tym że robisz jak
przychodzi jakiś event. Systemowy zazwyczaj. Można poprosić aby
przychodził non-stop jeden za drugim. Każdemu w/g potrzeb.
Oba podejścia są od dziesiątek lat katowane choćby w Qt i masz tam jakiś
obraz tego jak zrobić 1) (onIdle()) i jak zrobić 2) (push event). Mogą z
sobą działać bardzo gładko i elegancko.
Mam duże (w sensie wielopoziomoe) algorytmy rozbite na pojednycze kroki
i popychane z onIdle z głownej pętli. Spadek wydajności jest, ale
pomijalny, choć oczywiscie wszystko zależy od tego jak realizowany jest
yeld(). To podejście jest nie dla sztuki, tylko warunki brzegowe
utrudniają użycie watków. Na szczęscie nie ma najmniejszego problemu, w
dodatku mogę takie coroutines wrzucić *dynamicznie* do wątku i z niego
wyjąć kiedy tylko chcę, na przykład w połowie pracy.
Teoretycznie każdy algorytm można przerobić na coroutine za pomocą
boost::context ale koszt może być wysoki, to wszak przełącza kontekst,
prawie jak wątek. W przypadku ręcznym najczęściej pasuje jakiś wzorzec
typu maszyn stanów. Do ogarnięcia w typowych przypadkach, rekurencja
jest bardziej bolesna, ale niewiele.
Następne wpisy z tego wątku
- 09.06.20 00:38 heby
- 09.06.20 09:46 Mateusz Viste
- 09.06.20 22:58 Maciej Sobczak
- 09.06.20 23:18 heby
- 10.06.20 10:56 Mateusz Viste
- 10.06.20 23:19 Maciej Sobczak
- 11.06.20 10:37 Mateusz Viste
- 11.06.20 20:00 Maciej Sobczak
- 11.06.20 21:58 Mateusz Viste
- 12.06.20 20:55 Maciej Sobczak
- 13.06.20 09:33 Mateusz Viste
- 13.06.20 21:52 Maciej Sobczak
- 14.06.20 13:55 Mateusz Viste
- 14.06.20 20:52 Maciej Sobczak
Najnowsze wątki z tej grupy
- A Szwajcarzy kombinują tak: FinalSpark grows human neurons from stem cells and connects them to electrode arrays
- Re: Najgorszy język programowania
- NOWY: 2025-09-29 Alg., Strukt. Danych i Tech. Prog. - komentarz.pdf
- Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML
- Błąd w Sofcie Powodem Wymiany 3 Duńskich Fregat Typu Iver Huitfeldt
- Grok zaczął nadużywać wulgaryzmów i wprost obrażać niektóre znane osoby
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
Najnowsze wątki
- 2025-12-27 Gdynia => Przedstawiciel handlowy / KAM (branża TSL) <=
- 2025-12-27 Ewakuacja ludności
- 2025-12-26 Gdańsk => ERP Microsoft Dynamics 365 Commerce Consultant <=
- 2025-12-26 Kraków => Konsultant Microsoft Dynamics 365 Finance <=
- 2025-12-26 Kraków => Microsoft Dynamics 365 Finance Consultant <=
- 2025-12-26 wymieniłem termostat
- 2025-12-26 Warszawa => Senior Backend Java Developer <=
- 2025-12-25 Finlandia przywraca swastykę
- 2025-12-25 Skuteczność wymiaru sprawiedliwości
- 2025-12-24 Felgi
- 2025-12-24 2,5 x więcej niż Li-Ion
- 2025-12-24 No i kolejny ograniczony
- 2025-12-24 Warszawa => Młodszy Specjalista ds. wsparcia sprzedaży <=
- 2025-12-24 New York Times zagrożeniem bezpieczeństwa narodowego USA - POTUS D. Trump
- 2025-12-24 Podżeganie?




7 pułapek i okazji - zobacz co cię czeka podczas kupna mieszkania na wynajem