C#-olio-ohjelmointi tarjoaa paljon käyttäjäystävällisiä operaatioluokkia, tämä StringDictionary on kokoelma luokkia, jotka erikoistuvat merkkijonojen tallentamiseen avaimina ja arvoina, tämän luokan merkitys on: C# tietää, että merkkijonoa arvotyypissä käytetään melko laajasti, muita arvotyyppejä voidaan myös muuntaa vastaaviksi merkkijonotyypeiksi, tämä on tämän kokoelman merkitys, mutta voit silti käyttää muita kokoelmaobjekteja korvaamaan sen, mutta kiinnitä huomiota yhteen kohtaan, Jos kyseessä on merkkijonojen tallennus, se voi vähentää muistinmenetystä ja lyhentää ohjelman suorittamiseen kuluvaa aikaa
SyncRootia voidaan käyttää synkronoimaan pääsy StringDictionaryen
Suoraan sanottuna, kyse on lukituksen käsitteestä, kirjoitetaan ohjelma testaamaan sitä:
Koodi on seuraava:
Meillä on kaksi säikettä samanaikaisesti, joilla voimme lisätä dataa StringDictionary-sanakirjaan,
Suoritusaikaero ensimmäisen ja toisen säikeen välillä on yksi sekunti, jotta aikaero kasvaa ja suoritus ei ole liian nopea.
Näet, että säikeet ovat siirtyneet kahteen menetelmään, ja kun lisätään toinen data, ne ovat odottaneet ensimmäisen datan lisäämistä ennen toisen datan lisäämistä, ja yhteenlaskuaika on hyvin nopea.
Alla kirjoitamme sen eri tavalla, jotta ymmärrettävä olisi helpompi:
Kolme säikettä avataan, data lisätään, ja kolme säikettä suoritetaan lähes samanaikaisesti, mutta kun data lisätään, jokainen on 10 sekunnin välein.
Yhteenvetona, monisäikeisessä käytössä voimme käyttää SyncRootia säikeiden turvallisuuden varmistamiseksi
|