Tento článok je zrkadlovým článkom o strojovom preklade, kliknite sem pre prechod na pôvodný článok.

Pohľad: 19792|Odpoveď: 0

[Zdroj] Použitie SyncRoot v StringDictionary

[Kopírovať odkaz]
Zverejnené 23. 11. 2016 14:26:38 | | | |

Objektovo orientované programovanie v C# poskytuje veľa používateľsky prívetivých operačných tried, tento StringDictionary je kolekcia tried špecializujúcich sa na ukladanie reťazcov ako kľúčov a hodnôt, význam tejto triedy je: C# vie, že reťazec v danom type hodnoty je pomerne široko používaný, iné typy hodnôt sa dajú tiež konvertovať na zodpovedajúce typy reťazcov, to je význam tejto kolekcie, ale stále môžete použiť iné objekty kolekcie na jej nahradenie, ale venujte pozornosť jednému bodu, Ak ide o úložisko reťazcov, môže to znížiť stratu pamäte a skrátiť čas potrebný na spustenie programu


SyncRoot sa dá použiť na synchronizáciu prístupu k StringDictionary

Aby som to povedal na rovinu, je to koncept zámku, poďme napísať program na jeho testovanie:

Kód je nasledovný:



Máme dve vlákna súčasne na pridávanie dát do slovníka StringDictionary,

Rozdiel v čase vykonávania medzi prvým a druhým vláknom je jedna sekunda, aby sa časový rozdiel zväčšil a zabránilo sa príliš rýchlemu vykonávaniu.

Vidíte, že vlákna prešli na tieto dve metódy a pri pridávaní druhého dáta čakali na pridanie prvých dát pred pridaním druhého dáta, pričom čas pridania je veľmi rýchly.

Nižšie ho napíšeme inak, aby bol ľahšie pochopiteľný:





Otvoria sa 3 vlákna, pridajú sa dáta a všetky 3 vlákna sa spustia takmer súčasne, ale keď sa pridajú dáta, každé je od seba vzdialené 10 sekúnd.

Na záver, pri viacvláknovom prístupe môžeme použiť SyncRoot na zabezpečenie bezpečnosti vlákien




Predchádzajúci:Ako použiť WPF spúšť na prepínanie tlačidiel
Budúci:c# Použite OCR na rozpoznávanie čínskych obrázkov
Vyhlásenie:
Všetok softvér, programovacie materiály alebo články publikované spoločnosťou Code Farmer Network slúžia len na vzdelávacie a výskumné účely; Vyššie uvedený obsah nesmie byť použitý na komerčné alebo nezákonné účely, inak nesú všetky následky používateľmi. Informácie na tejto stránke pochádzajú z internetu a spory o autorské práva s touto stránkou nesúvisia. Musíte úplne vymazať vyššie uvedený obsah zo svojho počítača do 24 hodín od stiahnutia. Ak sa vám program páči, podporte originálny softvér, zakúpte si registráciu a získajte lepšie originálne služby. Ak dôjde k akémukoľvek porušeniu, kontaktujte nás prosím e-mailom.

Mail To:help@itsvse.com