[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