-
Data: 2012-02-20 21:51:48
Temat: Re: procedura tworzenia program?w
Od: Wojciech Jaczewski <w...@o...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Michoo wrote:
> Ja mówię o imo najsensowniejszym układzie w większości przypadków:
> - producent/ci generujący zdarzenia przetwarzania
> - konsument/ci generujący wynik i ewentualne zdarzenia odpowiedzi(np
> większość GUI pozwala na wywołania tylko z wątku głównego)
> - cały kontekst enkapsulowany w żądaniu/odpowiedzi.
A czy masz jakieś narzędzie, które automatycznie zweryfikuje, że
rzeczywiście cały kontekst jest enkapsulowany? W przypadku procesów: jeśli
nie używają pamięci dzielonej - jest oczywiste, że cały kontekst przechodzi
przez potoki/gniazda/itp. Jeśli jest pamięć dzielona, jest gwarancja że
jeden proces może namieszać drugiemu tylko w tej pamiędzi dzielonej, ale nie
w pozostałych blokach.
[Podejrzewam że istnieją języki, w których da się taką weryfikację zrobić; w
tej chwili chodzi mi o C/C++].
>> 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.
> Ok. Ale to już specyfika problemu.
>
> A ja piszę, że ogólnie o ile ktoś wie jak je używać to wątki są dobre.
Pewnie w niektórych przypadkach mogą być dobre.
Ja po prostu widziałem (a i sam tak robiłem dopóki się tego nie oduczyłem)
bardzo wiele programów, które dało się zrobić w jednym wątku na select/poll,
a były robione na wielu wątkach, co skutkowało wielokrotnie dłuższym czasem
ich testowania i likwidowania co bardziej uciążliwych błędów.
Prawie każdy wie co to jest wątek i do czego służy, natomiast znacznie
mniejszej liczbie ludzi chce się zagłębić w to, jak działa system
operacyjny, w którym tworzone przez nich programy będą uruchamiane i jakie
przydatne rzeczy ten system oferuje.
Jeśli ktoś zna alternatywy i wybierze wątki - OK, ale często wybieranie
wątków wynika z nieznajomości tych alternatyw.
Następne wpisy z tego wątku
- 21.02.12 09:24 Roman W
- 21.02.12 11:05 Andrzej Jarzabek
- 21.02.12 11:08 Andrzej Jarzabek
- 21.02.12 12:08 Andrzej Jarzabek
- 21.02.12 12:59 Wojciech Jaczewski
- 21.02.12 13:45 Andrzej Jarzabek
- 21.02.12 16:43 R.e.m.e.K
- 21.02.12 17:28 Wojciech Jaczewski
- 21.02.12 21:50 Andrzej Jarzabek
- 21.02.12 22:21 Wojciech Jaczewski
- 21.02.12 23:23 Andrzej Jarzabek
Najnowsze wątki z tej grupy
- 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
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
- C++. Podróż Po Języku - komentarz
- "Wuj dobra rada" z KDAB rozważa: Choosing the Right Programming Language for Your Embedded Linux Device
Najnowsze wątki
- 2025-06-25 klawiatura podświetlana zasilana z sieci
- 2025-06-25 Gdańsk => Programista Mainframe (z/OS, Assembler) <=
- 2025-06-25 Warszawa => Konsultant Wiodący SAP PP <=
- 2025-06-25 Warszawa => Leading SAP PP Consultant <=
- 2025-06-25 Wrocław => Senior Android Developer (Java) <=
- 2025-06-25 Gdańsk => Mainframe (z/OS, Assembler) Developer <=
- 2025-06-25 Wrocław => Senior Key Account Manager IT <=
- 2025-06-25 Warszawa => Junior Fullstack .Net Developer <=
- 2025-06-25 Białystok => Programista Delphi <=
- 2025-06-25 Warszawa => Programista C <=
- 2025-06-25 Zielonka => Key Account Manager IT <=
- 2025-06-25 Kraków => PHP Full Stack Developer <=
- 2025-06-25 Wrocław => Konsultant wdrożeniowy (systemy controlingowe) <=
- 2025-06-25 Warszawa => NMS System Administrator <=
- 2025-06-25 Warszawa => NMS System Administrator <=