OT: linux-Too many open files

Milan Kratochvíl krata.milan na seznam.cz
Úterý Říjen 15 18:09:55 CEST 2013


Nebude u stringlistu stejný problém s kolizí dvou zápisů?
Napadá mne zkusit semafory, ale aby to jen problém neoddálilo.
Jinak jestli to v threadu funguje tak bych jej užil raději než timer.
Milan

Dne 15.10.2013 17:58, Zapletal Martin napsal(a):
> No, to mně taky napadlo a tak jsem data začal cpát do TStringList a 
> zapsal je, jen když jich tam bylo více než 10. To znamená, že data 
> přečtená v OnTimer šla nejprve do TStringList-u a jako teprve potom do 
> souboru. A bylo to pořád stejné. Čumím do toho kódu už pátý den a už 
> jsem z toho zpitomělej. Už jsem zkoušel hodně variant...
>
>     ----- Original Message -----
>     *From:* Milan Kratochvíl <mailto:krata.milan na seznam.cz>
>     *To:* HW-news <mailto:hw-list na list.hw.cz>
>     *Sent:* Tuesday, October 15, 2013 5:50 PM
>     *Subject:* Re: OT: linux-Too many open files
>
>     Když v Lazaru zapomenu použít knihovnu cthreads tak mi thready
>     končí s s touto hláškou (jestli si dobře pamatuji), ale Lazarus to
>     tam dává automaticky.
>
>     Teď řeknu jen myšlenku, kterou nemám podloženou a nevím zda takto
>     TTimer pracuje.
>     Není možné, že nějaký zápis trvá déle a tak je událost OnTimer
>     vyvolána ještě během vykonávání předchozí události.
>
>     Milan
>
>
>     Dne 15.10.2013 17:34, Zapletal Martin napsal(a):
>>     Lazarus, v události OnTimer přečtu data a předám je proceduře,
>>     která jen zapíše na disk. Mohlo by to být tím, že to je v Timeru
>>     a ne v threadu? Mám i jinou aplikaci a ta data čte v threadu,
>>     stejnou procedurou je zapisuje a tam to nepadá.
>>     Zaplik
>>
>>         ----- Original Message -----
>>         *From:* Milan Kratochvíl <mailto:krata.milan na seznam.cz>
>>         *To:* HW-news <mailto:hw-list na list.hw.cz>
>>         *Sent:* Tuesday, October 15, 2013 5:26 PM
>>         *Subject:* Re: OT: linux-Too many open files
>>
>>         V jakém kompileru to máte? Zapisujete v těle programu nebo v
>>         threadu?
>>         Milan
>>
>>         Dne 15.10.2013 16:39, Zapletal Martin napsal(a):
>>>         Zdravím.
>>>         Nedokázal by mi prosím někdo poradit, co dělám špatně při
>>>         zápisu dat? V pascalu klasicky zapisuji data do souboru pomocí:
>>>         AssignFile(F, cesta);
>>>         Append(F);
>>>         WriteLn(F, co);
>>>         CloseFile(F);
>>>         Ale po asi třech hodinách zápisu do toho souboru(mi to
>>>         klekne na uvedené hlášce). Soubor je malý, nemá ani 1/2
>>>         mega. Velikost má pokaždé jinou. Na netu jsem našel info o
>>>         této problematice, že se má zvednout hodnota v souboru
>>>         /proc/sys/fs/file-max na cca 200000. Ale ani to nepomohlo.
>>>         Se souborem myslím pracuji korektně a zapisuji do něj tak
>>>         5-10x za minutu. Žádný drama. Prostě jen přečtu nasbíraná
>>>         data a zapíši do souboru. Ale POZOR! Pokud si udělám
>>>         jednoduchý testovací cyklus a v něm zapisuji data do toho
>>>         souboru, zapíšu tam třeba 50000 záznamů jako by nic. Proč se
>>>         mi neuvolňují popisovače a ucpává se to? Linuxář moc velký
>>>         nejsem, 95% aplikací dělám pro Win ale na to, jak je to
>>>         prosté si s tím nevím rady. Medium pro zápis je OK, žádné
>>>         chyby nevykazuje. Je nějaký příkaz jak uvolňovat popisovače
>>>         souborů? Disk je FAT32. Pomohlo by jej předělat na nějaký
>>>         EXT??? Potíž je, že by měl zůstat čitelný pro Win.
>>>         Zaplik
>>>
>>>
>>>         _______________________________________________
>>>         HW-list mailing list  -  sponsored bywww.HW.cz
>>>         Hw-list na list.hw.cz
>>>         http://list.hw.cz/mailman/listinfo/hw-list
>>
>>         ------------------------------------------------------------------------
>>         _______________________________________________
>>         HW-list mailing list  -  sponsored by www.HW.cz
>>         Hw-list na list.hw.cz
>>         http://list.hw.cz/mailman/listinfo/hw-list
>>
>>
>>
>>     _______________________________________________
>>     HW-list mailing list  -  sponsored bywww.HW.cz
>>     Hw-list na list.hw.cz
>>     http://list.hw.cz/mailman/listinfo/hw-list
>
>     ------------------------------------------------------------------------
>     _______________________________________________
>     HW-list mailing list  -  sponsored by www.HW.cz
>     Hw-list na list.hw.cz
>     http://list.hw.cz/mailman/listinfo/hw-list
>
>
>
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list

------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20131015/67762180/attachment.htm>


Další informace o konferenci Hw-list