c - Ressourcer for at lære IOCP på Windows

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg blev for nylig opmærksom på denne ting kaldet IOCP på windows, og jeg begyndte at søge efter mere information om det, men jeg kunne ikke finde noget opdateret (de fleste eksempler var på kodeprojekt næsten 5 år gamle) og ikke for mange guider eller tutorials.Kan nogen anbefale nogen opdaterede ressourcer om det i form af online tutorials eller eksempel projekter (som du skrev og kan dele eller andre open source projekter) eller endda en bog om det, fordi hvis det er så godt som det lyder Jeg planlægger at bruge det i vid udstrækning, så jeg vil investere i det.


Tak skal du have.

Bedste reference


IOCP er en funktion, der har været i Windows siden de mørke aldre og har ændret sig lidt i år siden. Som sådan skal alle prøver mv fra 5 + år siden stadig virke ret godt i dag.


MSDN har noget dokumentation om IOCP:
http://msdn.microsoft.com/en-us/library/aa365198\%28v=VS.85\%29.aspx[1]


Mark Russinovich skrev også en god introduktion til IOCP:
http://sysinternals.d4rk4.ru/Information/IoCompletionPorts.html[2]


Mark skrev også en mere grundig beskrivelse af Windows 'IO-infrastruktur i' Windows Internals ', som er afgørende læsning.


Jeg anbefaler også stærkt Jeffery Richters 's' Windows via C/C ++ ', hvilket også er afgørende læsning for alle, der går ind på lavere Windows programmering.


HTH.

Andre referencer 1


Hvis du ser på IOCP fra et netværksprogrammeringssynspunkt, vil du sandsynligvis også tilføje Netværksprogrammering til Microsoft Windows til din liste over ressourcer.


Der var mange grundlæggende IOCP-tutorials på CodeProject tilbage i 2002, da jeg skrev mine artikler om IOCP der, så jeg tog en lidt anden tilgang og skrev nogle kode, der forhåbentlig kunne genbruges som en simpel netværksramme. Dette er siden vokset til et produkt, som jeg sælger. Den nyeste version af koden, der er knyttet til de originale CodeProject-artikler, kan findes her: http://www.serverframework.com/products---hehe-free-framework.html Jeg har ændret det betydeligt i årenes løb men den originale kode fungerer stadig fint og giver god skalerbarhed og er måske nyttigt som et fungerende eksempel at lære af. [6]