Já bych to spíš viděl na nedostatek paměti v procesu. Na 32bit systému
(případně pokud je to 32bit program na 64bit systému) se virtuální paměť
procesu musí vejít do 2 GB, a může nastat nějaká fragmentace, kdy např.
nemusí existovat souvislý volný úsek požadované velikosti. Ale nevím,
jestli je to
Je to vybalování ZIP archivu:
CHUNK = 65536
with file(FFN_OUT, 'wb') as FI:
with ZIP.open(FN_ZIP, 'r') as FI_OF_ZIP:
while True:
PART = FI_OF_ZIP.read(CHUNK)
if not PART:
A ako robis ten zapis 'po castiach'? Subor zavries a znovu otvoris? Ak
ano, skusal si miesto toho urobit flush()?
Citát zu1234 :
Myslím že to není můj případ:
Soubor byl otevřen jednoduše, tedy předpokládám buffrovaně:
with file(FFN_OUT, 'wb') as FI:
Soubor nebyl tlačen po síti, byl
Myslím že to není můj případ:
Soubor byl otevřen jednoduše, tedy předpokládám buffrovaně:
with file(FFN_OUT, 'wb') as FI:
Soubor nebyl tlačen po síti, byl umístěn lokálně na C: .
Děkuji za zájem.
Z vašich reakcí vyplývá že jsem asi neudělal žádnou primitivní chybu,
jen jsem prostě šlápl mimo
A neukládal si to po netu?
On x86 (32-bit) or IA64 (64-bit) systems, the maximum buffer size is just under
64MB. For X64 systems, the maximum buffer size is just under 32MB.
The maximum unbuffered read and write size limits are imposed by the design of
the IO manager inside the Windows
W10 prof 32 bit
Filesystém NTFS
Python 2.7.15
Opakuji: pokud soubor zapisuju po částech, tak bez problému.
Znovu jsem to zkoušel zapsat vcelku: neprošlo cca 100MB.
Dne 23.9.2019 v 16:14 Petr Messner napsal(a):
Na jakém systému? Linux?
Nezapisoval jsi soubor větší než 4 GB na FAT32?
A jaký byl text toho IOError? To, že to nic neříká tobě, neznamená, že to
nevysvětluje tu chybu :)
file.write je high level metoda, která volá OS syscall write tolikrát,
kolik je potřeba, takže teoreticky jsi omezený jen velikostí RAM.
PM
po 23. 9. 2019 v 11:43 odesílatel zu1234 napsal:
Hledej ve specifikacich sveho operacniho systemu a filesystemu - na tohle
neni obecna odpoved...
Jirka
On Mon, 23 Sep 2019 at 11:43, zu1234 wrote:
> Při vytváření (binárního) souboru pomocí file.write() jsem se utkal s
> nic neříkající chybou io error ... .
> Nakonec jsem zjistit že větší
Při vytváření (binárního) souboru pomocí file.write() jsem se utkal s
nic neříkající chybou io error ... .
Nakonec jsem zjistit že větší soubor je nutno zapisovat po částech a ne
naráz.
Nenašel jsem jak zjistit jak největší může ta část být.
Program funguje, ale chtěl bych vědět víc.
Orientuje