NOVINKA - Online rekvalifikační kurz Java programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!
Avatar
Lukáš Fusek
Tvůrce
Avatar
Lukáš Fusek:18.4.2016 20:14

Zdravím,
neví náhodou někdo, jak asynchronně bezpečně zapisovat do souboru? Pokud vím, tak vlákna v Task běží jako background a při vypnutí aplikace se okamžitě ukončí. Jenže já bych potřeboval, aby při ukončení aplikace běžící úloha neskončila v zápisu někde uprostřed řádku. Lze toho nějak docílit?

 
Odpovědět
18.4.2016 20:14
Avatar
Petr Čech
Tvůrce
Avatar
Odpovídá na Lukáš Fusek
Petr Čech:18.4.2016 20:19

Když ukončíš appku, nebudeš mít ta data, co chceš zapsat...

Nahoru Odpovědět
18.4.2016 20:19
the cake is a lie
Avatar
Lukáš Fusek
Tvůrce
Avatar
Lukáš Fusek:18.4.2016 20:25

Mě však zajímá, co nastane v případě, že asynchronně zapisuji třeba 1.5 GB textu (naráz) a při probíhajícím zápisu vypnu aplikaci. Pokud to chápu správně, je šance, že soubor zůstane rozepsaný pouze z půlky. Já bych však potřeboval, aby byl zápis dokončen a nebo v tom horším případě, aby bylo aspoň někde zapsáno, že zápis nebyl kompletní.

Editováno 18.4.2016 20:25
 
Nahoru Odpovědět
18.4.2016 20:25
Avatar
Odpovídá na Lukáš Fusek
Neaktivní uživatel:18.4.2016 20:29

Tak při ukončení počkej na to druhé vlákno

Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
Nahoru Odpovědět
18.4.2016 20:29
Neaktivní uživatelský účet
Avatar
Lukáš Fusek
Tvůrce
Avatar
Lukáš Fusek:18.4.2016 20:41

Pravda.. nechápu, že mě to nenapadlo. No v tom případě mám ještě jednu otázku. Existuje způsob, jak se chránit proti této situaci při násilném ukončení procesu? Protože by znamenalo, že při násilném ukončením by se mohli poškodit data tak, že by aplikace vyžadovala reinstalaci. Jsou tedy nějaké způsoby, kterými bych riziko minimalizoval nebo dokonce eliminoval?

 
Nahoru Odpovědět
18.4.2016 20:41
Avatar
Odpovídá na Lukáš Fusek
sadlomaslox25:18.4.2016 23:08

pouzij transakci nebo neco na podobny zpusob.

 
Nahoru Odpovědět
18.4.2016 23:08
Avatar
LacoS.
Člen
Avatar
LacoS.:19.4.2016 10:42

alebo urob zapis do suboru ako service, lenze musis posielat data do servisu a ten bude zapisovat na disk

 
Nahoru Odpovědět
19.4.2016 10:42
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 7 zpráv z 7.