-
Data: 2012-02-20 14:06:40
Temat: Re: procedura tworzenia program?w
Od: Wojciech Jaczewski <w...@o...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Michoo wrote:
> W dniu 20.02.2012 11:12, Wojciech Jaczewski pisze:
>> A. L. wrote:
>>
>>> [...] "ale ja bez watkow". Na pytanie "dlaczego" padaja rozne
>>> [odpowiedzi. ...] "to jest sposob na klopoty"
>>
>> A czy przypadkiem używanie wątków (tam gdzie nie jest to na prawdę
>> niezbędne) nie jest proszeniem się o kłopoty?
> Abstrahując od niedouczonych programistów, którzy sobie z wątkami nie
> radzą (niestety bardzo częste) to jakie kłopoty są możliwe?
Jeśliby sobie wypisać wszystkie możliwe stany, w jakich może znaleźć się
program wielowątkowy a w jakich jednowątkowy, to w wielowątkowym będzie ich
znacznie więcej. Z tego w część z nich program będzie wchodził niezwykle
rzadko (np. tylko przy obciążonym na 100% systemie) - co znacznie utrudni
wychwycenie niektórych błędów.
> Imo wątki nie dość, że zazwyczaj upraszczają zapis
Kosztem dłuższego analizowania/testowania, czy gdzieś nie ma wyścigu.
> (bo zazwyczaj
> wymuszają model oparty o message passing) to jeszcze pozwalają na
> łatwiejsze zmiany.
Wolę message passing na procesach.
Częściowo wynika to z tego, co dotychczas robiłem, a POSIX-owe API ma bardzo
poważne - jak dla mnie - wady:
- pthread_cond_timedwait operuje na czasie systemowym a nie monotonicznym
- nie mam możliwości nastawić czekania (select/poll) na pierwsze ze zdarzeń:
cond (lub semafor), otrzymanie danych na socket-cie.
A skoro zwykle i tak muszę używać komunikacji przez potok lub gniazdo, to
wolę osobny proces zamiast wątku.
Następne wpisy z tego wątku
- 20.02.12 14:49 Michoo
- 20.02.12 14:52 A.L.
- 20.02.12 15:04 Andrzej Jarzabek
- 20.02.12 15:07 A.L.
- 20.02.12 15:07 A.L.
- 20.02.12 15:27 bartekltg
- 20.02.12 15:41 Wojciech Jaczewski
- 20.02.12 16:09 Andrzej Jarzabek
- 20.02.12 16:32 bartekltg
- 20.02.12 17:56 Roman W
- 20.02.12 18:15 Bronek Kozicki
- 20.02.12 18:27 A.L.
- 20.02.12 18:28 A.L.
- 20.02.12 18:29 Edek Pienkowski
- 20.02.12 18:30 A.L.
Najnowsze wątki z tej grupy
- "Wuj dobra rada" z KDAB rozważa: Choosing the Right Programming Language for Your Embedded Linux Device
- Nowa ustawa o ochronie praw autorskich - opis problemu i szkic ustawy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
Najnowsze wątki
- 2025-03-29 Re: Kompensacja mocy biernej przy 230VAC
- 2025-03-29 Warszawa => Java Full Stack Developer (Angular2+) <=
- 2025-03-29 Warszawa => Specjalista rekrutacji IT <=
- 2025-03-28 A gdyby to był elektryk?
- 2025-03-28 Współczesny falomierz
- 2025-03-28 Rzeszów => WEBCON Developer <=
- 2025-03-28 Szczecin => Specjalista ds. public relations <=
- 2025-03-28 Warszawa => Staż w dziale Sprzedaży B2B <=
- 2025-03-28 Warszawa => MENA New Business Manager <=
- 2025-03-28 Środa Wielkopolska => SAP FI/CO Internal Consultant <=
- 2025-03-28 Białystok => Generative AI Engineer <=
- 2025-03-28 China-Kraków => Key Account Manager IT <=
- 2025-03-28 Warszawa => SQL Developer <=
- 2025-03-28 Gliwice => Ekspert IT (obszar systemów sieciowych) <=
- 2025-03-28 Gliwice => IT Expert (Network Systems area) <=