-
Fototrend

Új hozzászólás Aktív témák
-
dqdb
nagyúr
válasz
jattila48
#13011
üzenetére
A Windows ReplaceFile API függvényével kapcsolatban érdekelne, hogy az mennyiben tekinthető atomi műveletnek.
Ha átadsz backup fájlnevet, akkor a hívó szempontjából közel atominak tekinthető. A közel szó arra vonatkozik, hogy az eredeti fájl tartalma megmarad, csak az attribútumai nem (részletek itt).A kérdésem az, hogy a Windows preemptív ütemezője átadhatja-e a vezérlést másik thread-nek/processznek a ReplaceFile végrehajtása közben.
Természetesen. És mivel jellemzően egyetlen szálnál több létezik manapság egy processzorban, így még a preemptív végrehajtásfelfüggesztés sem kell ahhoz, hogy párhuzamosan más is fusson.Mert az, hogy a ReplaceFile teljesen vagy egyáltalán nem hajtódik végre, rendben van, de előfordulhat-e, hogy a ReplaceFile véhrehajtása közben egy másik thread megpróbálja megnyitni a helyettesítendő file-t?
Előfordulhat.Ekkor ugyanis lehet, hogy a másik thread nem fogja tudni megnyitni a file-t.
Ha olyan sharing flagekkel nyitja meg, amit a ReplaceFile nem enged, akkor nem fog sikerülni, ha olyannal, hogy engedi, akkor igen.Ha a ReplaceFile olyan értelemben lenne atomi, hogy az ütemező közben nem adhatná át a vezérlést másik thread-nek, akkor ez a probléma nem léphetne fel.
Vagyis egy ReplaceFile hívás blokkolná a teljes operációs rendszert arra az időre, ami nyilvánvalóan nagyon nem jó.TxF kell neked, és ott a MoveFileTransacted hívást, aminél minden fél számára atomi művelet a mozgatás. Vagy gondold át a választott megoldást, mert a legtöbb esetben más működést választva eliminálhatóak azok az esetek, amelyekre most választ keresel.
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
- Nemzetközi vizekre evezett a Realme GT 7 és GT 7T
- LEGO klub
- Gaming notebook topik
- Kerékpárosok, bringások ide!
- Képernyőmentes Fitbit jön a Google-től
- Formula-1
- Kertészet, mezőgazdaság topik
- N€T0X|N: Talaria tuning
- Kedvenc zene a mai napra
- További aktív témák...
- iPhone SE 2020 128GB Black -1 ÉV GARANCIA - Kártyafüggetlen, MS4594
- Samsung Galaxy S23 Ultra 5G SM-S918B/DS 12GB 512GB Phantom Black Gyári független Garancia Dodozában
- Szép állapotban Lenovo ThinkPad T14s Gen 4 i5-1335u/16 GB/256 SSD/FHD+/IPS/Garancia 2027
- GYÖNYÖRŰ iPhone XR 128GB Red-1 ÉV GARANCIA - Kártyafüggetlen, MS3984, 100% Akkumulátor
- AKCIÓ! MSI Ventus 3X OC RTX 4070Ti videókártya garanciával hibátlan működéssel
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

