[so] [Tema2][General] Incorrect number of read syscalls

Paul Olaru olarupaulstelian97 at gmail.com
Sun Mar 15 22:23:54 EET 2020


Bine, nu știu cum e testul în sine. Dacă so_fread e apelat cu maxim 14 tu
nu ar trebui să faci mai multe citiri. Când bufferul e gol și ai nevoie de
date faci o singură citire, chiar dacă e sub cât are nevoie bufferul ca să
se umple.

On Sun, Mar 15, 2020, 22:21 Paul Olaru <olarupaulstelian97 at gmail.com> wrote:

> Cred că există o presupunere (nu tocmai validă) în checker că poți profita
> de faptul că dacă un apel read ți-a returnat mai puțin decât i-ai cerut
> singurul motiv ar fi EOF.
>
> Dacă faci chestia asta îți trec toate testele?
>
> On Sun, Mar 15, 2020, 22:18 Vlad Lungu via so <so at cursuri.cs.pub.ro>
> wrote:
>
>> Salut,
>>   Primesc aceasta eroare. Checkerul asteapta sa fac o singura operatie de
>> read pentru a popula bufferul. Eu fac fix ca la laborator. Intr-o bucla
>> while testez daca mai am de citit. Daca a umplut bufferul sau apelul read a
>> intors 0(eof), ies din bucla. Initial bufferul e 4096, citeste 14. Nu a
>> intors 0, deci nu marcheaza eof si nu iese. Nu a umplut bufferul, deci nu
>> iese. Astfel, face un al doilea apel de sistem, care intoarce 0 si iese din
>> bucla. O solutie pe care o vad pentru a trece de checker e sa retin undeva
>> si dimensiunea fisierului. in momentul in care dimensiunea fisierului a
>> fost atinsa, iese. Asta se doreste?
>> _______________________________________________
>> http://ocw.cs.pub.ro/courses/so/info/lista-discutii
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://cursuri.cs.pub.ro/pipermail/so/attachments/20200315/e813c894/attachment.html>


More information about the so mailing list