Archief - Multithreading

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Destiser

Legacy Member
Hoi,

kent er iemand een boek die enkel over multithreading gaat? Liefst C#. Graag ook een duidelijk boek, in andere boeken die over .NET of C# gaan wordt multithreading zodanig kort en vluchtig besproken dat ik het niet echt in de vingers krijg.

Dus als iemand er eentje kent :)

bedankt!

Cycloon

Legacy Member
Multithreaded systemen programmeren is een concept en staat volledig los van technologieën (volledig is mss overdreven, er moet uiteraard wel support zijn voor threads enzo :p). Eénmaal je die concepten kent/beheerst kan je dat perfect in uitvoering brengen in bv C#. Enkel en alleen met threads leren werken in C# stelt totaal niks voor. Ga dus voor een boek die de algemene concepten uitlegt. Om er enkele te vinden moet je op amazon maar eens "parallel programming" ingeven als zoekterm.

NeverwinterX

Legacy Member
Wel oppassen als je zomaar googlet op "parallel programming". Dan kom je ook dingen tegen die enkel over MPI of OpenMP gaan enzo, ik denk niet dat jij daar iets aan hebt (buiten een kleine inleiding ofzo). Zorg dat het zeker threads behandelt.

Moto

Legacy Member
Zeker proberen C# 4.0 te gebruiken
3.5 of lager een custom threadpool gebruiken

H@voc_!nc.

Legacy Member
Als multithreading het plan is... is het een slecht plan :)
multithreading is (in mijn mening) zeer zelden echt nodig en levert meer shit op dan dat je er mee oplost. (volledig of topic maar sorry kannet nie laten).

Moto

Legacy Member
multithreading is (in mijn mening) zeer zelden echt nodig en levert meer shit op dan dat je er mee oplost. (volledig of topic maar sorry kannet nie laten).

Performance + UI thread responsive houden zijn 2 ZEER belangrijke redenen om multi-threading te gebruiken.

+ in C# zijn der heel veel zaken die simpel te doen zijn met threading, enige wat kan tegenvallen zijn UI Zaken met cross-thread problemen

Jerre Muesli

Legacy Member
Als het is om uw desktop app niet te doen freezen als je 1 processor hebt is het wel een goed idee ;) maar in de meeste gevallen heb je het niet echt nodig.

mausdabber

Legacy Member
H@voc_!nc. zei:
Als multithreading het plan is... is het een slecht plan :)
multithreading is (in mijn mening) zeer zelden echt nodig en levert meer shit op dan dat je er mee oplost. (volledig of topic maar sorry kannet nie laten).

De grap is wel dat er bijna geen enkel programma meer single-threaded draait tegenwoordig, zowel in Windows als Linux. En hoe meer framework hoe erger. Vooral .NET- en Qt-gebaseerde programma's zijn notoir multi-threaded.

Destiser

Legacy Member
tis idd wel om responsive UI te hebben eh en ook om de laadtijd van mn prog te verkorten, dat ik enkele zware taken parrallel kan doen draaien ipv serieel

alvast dank aan de nuttige reacties

Moto

Legacy Member
Tja die Free E-book die gepost is zeker lezen,

Bedoel C# 5.0 het async keyword, data ophalen async & threaded, voor loading is gewoon belangrijk. en gaat alleen belangrijker worden in de toekomst van c# :)

Of gewoon zoiets als een ManualResetEvent, zeer makkelijk te gebruiken bij startup om wat threads te openen en stuff te laden en dan het uitlezen afblokken met een ManualResetEvent, is in een minuut geimplementeerd en kan de user telkens hopen tijd besparen

voor parallel stuff check -> Parallel Programming with Microsoft .NET

mausdabber

Legacy Member
Destiser zei:
tis idd wel om responsive UI te hebben eh en ook om de laadtijd van mn prog te verkorten, dat ik enkele zware taken parrallel kan doen draaien ipv serieel

alvast dank aan de nuttige reacties

Zoals Firefox bvb, 20 threads draaien en dan nog niet reageren ?

Ik maak al m'n applicaties single-threaded en die hebben altijd een "responsive UI". Kwestie van state machines. Alleen blokkerende I/O steek ik in aparte threads, maar dat komt niet zo vaak voor. Nu ja, ik ben niet afhankelijk van multi-threaded frameworks; als ik iets nodig heb maak ik het zelf.

H@voc_!nc.

Legacy Member
mausdabber zei:
De grap is wel dat er bijna geen enkel programma meer single-threaded draait tegenwoordig, zowel in Windows als Linux. En hoe meer framework hoe erger. Vooral .NET- en Qt-gebaseerde programma's zijn notoir multi-threaded.


true maar da wilt nie zeggen dat ge da zelf moet gaan liggen proberen... ik kan daar ondertussen boeken over schrijven van de klotezooi die ge daar mee voorhebt

anyway on topic: Multi-threading in .NET: Introduction and suggestions

maar probeer die dingen zo weinig mogelijkt te gebruiken... dikwijls is het een veel eleganter oplossing om callbacks en async calls te gebruiken.

Jerre Muesli

Legacy Member
Feit is dat in .Net veel voor u gedaan wordt dmv de BackgroundWorker.
Ik weet nu wel niet dat dat veel gezever vermijd aangezien ik meer een Java-guy ben en weinig ervaring heb binnen .Net

mausdabber

Legacy Member
H@voc_!nc. zei:
true maar da wilt nie zeggen dat ge da zelf moet gaan liggen proberen... ik kan daar ondertussen boeken over schrijven van de klotezooi die ge daar mee voorhebt

anyway on topic: Multi-threading in .NET: Introduction and suggestions

maar probeer die dingen zo weinig mogelijkt te gebruiken... dikwijls is het een veel eleganter oplossing om callbacks en async calls te gebruiken.

Uh, klotezooi?? Mijn software draait anders wel zonder problemen. Schrijf die boek en ik lees hem. Als jij niet eens kan single-threaded programmeren met state machines doe dan iets anders. We spreken hier over basistechniek programmeren.

H@voc_!nc.

Legacy Member
mausdabber zei:
Uh, klotezooi?? Mijn software draait anders wel zonder problemen. Schrijf die boek en ik lees hem. Als jij niet eens kan single-threaded programmeren met state machines doe dan iets anders. We spreken hier over basistechniek programmeren.

excuses klote zooi met multithreading that is meer bepaald concurrency, deadlocks en al die leuke dingen (zals ooit nen toffe pe die nen Mutex in ne webservice had gestoken)

mausdabber

Legacy Member
H@voc_!nc. zei:
excuses klote zooi met multithreading that is meer bepaald concurrency, deadlocks en al die leuke dingen (zals ooit nen toffe pe die nen Mutex in ne webservice had gestoken)

Geen last van :D
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan