Ez a cikk egy tükör gépi fordítás, kérjük, kattintson ide, hogy ugorjon az eredeti cikkre.

Nézet: 19792|Válasz: 0

[Forrás] A SyncRoot használata a StringDictionary-ben

[Linket másol]
Közzétéve 2016. 11. 23. 14:26:38 | | | |

A C# objektumorientált programozás sok felhasználóbarát műveleti osztályt biztosít, most ez a StringDictionary egy olyan osztálygyűjtemény, amelyek a stringek kulcsként és értékként történő tárolására specializálódnak, ennek az osztálynak a jelentése: C# tudja, hogy az értéktípusban lévő string elég széles körben használatos, más értéktípusok is átalakíthatók megfelelő stringtípusokká, ez a gyűjtemény jelentése, de továbbra is használhatsz más gyűjteményobjektumokat helyettesíteni, de figyelj egy pontra, Ha string tárolásról van szó, ez csökkentheti a memóriaveszteséget és a program futtatásának idejét


A SyncRoot segítségével szinkronizálhatja a StringDictionary-hez való hozzáférést

Őszintén szólva, ez a zár fogalma, írjunk egy programot, hogy teszteljük:

A kódex a következő:



Két szál egyszerre van az adatok hozzáadására a StringDictionary szótárba,

Az első és a második szál közötti végrehajtási időbeli különbség egy másodperc, hogy növeljék az időkülönbséget és megakadályozzák a végrehajtás túl gyors működését.

Láthatod, hogy a szálak a két módszerhez mentek, és amikor hozzáadják a második adatdarabot, vártak az első adat hozzáadására, mielőtt a második adatot adják hozzá, és az összeadási idő nagyon gyors.

Az alábbiakban másképp írjuk meg, hogy könnyebben érthető legyen:





3 szálat nyitnak meg, az adatokat hozzáadják, és a három szálat szinte egyszerre hajtják végre, de az adatok hozzáadásakor mindegyik 10 másodperc különbséggel történik.

Összefoglalva, amikor többszálas hozzáférés van, a SyncRoot-ot használhatjuk a szálbiztonság biztosítására




Előző:Hogyan lehet WPF Triggerrel gombokat váltani
Következő:c# Használj OCR-t a kínai képek felismerésére
Lemondás:
A Code Farmer Network által közzétett összes szoftver, programozási anyag vagy cikk kizárólag tanulási és kutatási célokra szolgál; A fenti tartalmat nem szabad kereskedelmi vagy illegális célokra használni, különben a felhasználók viselik az összes következményet. Az oldalon található információk az internetről származnak, és a szerzői jogi vitáknak semmi köze ehhez az oldalhoz. A fenti tartalmat a letöltés után 24 órán belül teljesen törölni kell a számítógépéről. Ha tetszik a program, kérjük, támogassa a valódi szoftvert, vásároljon regisztrációt, és szerezzen jobb hiteles szolgáltatásokat. Ha bármilyen jogsértés történik, kérjük, vegye fel velünk a kapcsolatot e-mailben.

Mail To:help@itsvse.com