[jvm] Интеграция FILE* с Java-потоками
Vyacheslav Stroev
stroev.vyacheslav at gmail.com
Fri Mar 23 23:08:21 MSK 2018
Запушил реализацию работы с pipe в отдельную ветку. Стоит заметить,
что пришлось поменять сигнатуры в stram_io из-за проблем с
синхронизацией потоков. Еще добавил тесты, они работают для 2
реализация (pipe и fopencookie).
Посмотрите, кто-нибудь пожалуйста код и оставьте замечания.
22 марта 2018 г., 21:31 пользователь Maxim Karpov <me at makkarpov.ru> написал:
> Вмержил в master.
>
>
> 22.03.2018 13:46, Михаил Мутафян пишет:
>>
>> Спасибо за ревью, исправил недочёты, тесты тоже добавил.
>>
>> 21.03.2018, 21:31, Maxim Karpov <me at makkarpov.ru
>> <mailto:me at makkarpov.ru>>
>> В целом код хороший, хотя и с небольшими замечаниями.
>>
>> 1. (и основное) Если fopencookie() по каким-то неведомым причинам
>> таки
>> не сможет создать поток, то вызывающий код обрушит через exit()
>> всю JVM.
>> Хотелось бы видеть создание и выкидывание исключения, причем внутри
>> самой функции открытия потока.
>>
>> 2. Тестовый код лучше не смешивать с основным и вынести как в
>> отдельный
>> .cpp-файл, так и в отдельный класс. Можно добавить еще тесты на
>> fscanf и
>> ungetc, хотя, наверное, и не обязательно, ведь если поток работает, а
>> scanf - нет, то это уже проблемы libc.
>>
>> 3. В тестовом коде можно использовать NewStringUTF, пляски с буферами
>> будет меньше.
>>
>
> _______________________________________________
> jvm mailing list
> jvm at compilers.ispras.ru
> https://compilers.ispras.ru/cgi-bin/mailman/listinfo/jvm
More information about the jvm
mailing list