Ta članek je zrcalni članek strojnega prevajanja, kliknite tukaj za skok na izvirni članek.

Pogled: 19792|Odgovoriti: 0

[Vir] Uporaba SyncRoot v StringDictionary

[Kopiraj povezavo]
Objavljeno na 23. 11. 2016 14:26:38 | | | |

C# objektno usmerjeno programiranje ponuja veliko uporabniku prijaznih operacijskih razredov, zdaj je ta StringDictionary zbirka razredov, specializiranih za shranjevanje nizov kot ključev in vrednosti, pomen tega razreda je: C# ve, da je niz v tem tipu vrednosti precej razširjen, druge vrste vrednosti je mogoče prav tako pretvoriti v ustrezne vrste nizov, to je pomen te zbirke, vendar lahko še vedno uporabite druge objekte zbirke za zamenjavo, vendar bodite pozorni na eno točko, Če gre za shranjevanje nizov, lahko to zmanjša izgubo pomnilnika in skrajša čas, potreben za zagon programa


SyncRoot se lahko uporablja za sinhronizacijo dostopa do StringDictionary

Če povem naravnost, gre za koncept zaklepanja, napišimo program, ki ga bo preizkusil:

Koda je naslednja:



Imamo dve niti hkrati, da dodajamo podatke v slovar StringDictionary,

Razlika v času izvajanja med prvo in drugo nitjo je ena sekunda, da se časovna razlika poveča in prepreči prehitro izvajanje.

Vidite lahko, da so niti prešle na obe metodi, in ko dodajate drugi podatek, čakajo, da se prvi podatki dodajo, preden dodajo drugega, čas dodajanja pa je zelo hiter.

Spodaj ga bomo napisali na drugačen način, da bo lažje razumljiv:





Odprejo se 3 niti, podatki se seštejejo, in vse tri niti se izvedejo skoraj istočasno, vendar je ob dodajanju podatkov vsaka 10 sekund narazen.

Povzemimo, da lahko pri večnitnem dostopu uporabimo SyncRoot za zagotavljanje varnosti niti




Prejšnji:Kako uporabiti WPF sprožilec za preklapljanje gumbov
Naslednji:c# Uporaba OCR za prepoznavanje kitajskih slik
Disclaimer:
Vsa programska oprema, programski materiali ali članki, ki jih izdaja Code Farmer Network, so namenjeni zgolj učnim in raziskovalnim namenom; Zgornja vsebina ne sme biti uporabljena v komercialne ali nezakonite namene, sicer uporabniki nosijo vse posledice. Informacije na tej strani prihajajo z interneta, spori glede avtorskih pravic pa nimajo nobene zveze s to stranjo. Zgornjo vsebino morate popolnoma izbrisati z računalnika v 24 urah po prenosu. Če vam je program všeč, podprite pristno programsko opremo, kupite registracijo in pridobite boljše pristne storitve. Če pride do kakršne koli kršitve, nas prosimo kontaktirajte po elektronski pošti.

Mail To:help@itsvse.com