witam,
mam problem z "podpieciem" sie pod plik zapisywany na udziale samby,
strumien danych z windozowego oprogramowania (wyników obliczen)
zapisywany jest na biezaco do pliku tekstowego na udostepniomym udziale
samby.
po uruchomieniu 'tail -f abc.txt' pokazuje ostatnich 10 linni pliku... i
koniec, dane sa caly czas zapisywane do pliku jednak nie ukazuja sie na
ekranie.
chcialem poddac je dalszej obrobce przekazujac strumien do
oprogramowania napisanego pod linuxa 'tail -f abc.txt | a.out >
wyniki.txt' ...
problem pojawia sie wylacznnie wtedy gdy strumien zapisywany jest przez
smb, ta sama (tzn. analogiczna) operacja wykonywana wylaczene na linuxie
za pomoca innego oprogramowania dziala bez wiekszych problemow.
To nie jest problem samby tylko windowsa - sprawdziłem, po smb linux-linux
nie ma problemu.
w koncu udalo sie:)
rzecz w tym, ze oprogramowanie na windozie przed zapisywaniem
buforowalo dane, zapis nastepowal
w odstepach kilkuminutowych (tak na pierwszy rzut oka wygladalo to na
strumien) w tym czasie smb zwalnial plik a po ponoiwnym dopisaniu tail
sie
gubil,
po zmianie bufora na jedoznakowy wszysko gra,
dzieki
czy istnieje mozliwosc 'prostego' rozwiazania tego problemu?
Jeżeli masz program źródłowy, to przerobić go aby zamykał co jakiś czas plik
(a może flush coś da??).
|