Космическая архитектура?

read не записывает завершающий нулевой символ. После if ((count = read(pipeToChild[0], tmp, 50)) < 0) программа передает tmp, не записывая в него нулевую символику, в sprintf.

Это приводит к тому, что команде echo передаются дополнительные данные мусора из tmp за пределы того, что было прочитано из канала, что, в свою очередь, заставляет grep не найти подходящую строку.

Одним из исправлений было бы изменить read на read(pipeToChild[0], tmp, sizeof tmp - 1) и вставить tmp[count] = 0;.

14
задан Robert Campbell 18 April 2010 в 06:39
поделиться

2 ответа

Почему Вы рассматриваете Javaspaces как мертвый вне того, что выпуск Jini 2.1 был некоторое время назад (октябрь 2005)? Используя это, я предположил бы, что это указывает на сформировавшийся и полный технологический набор, а не что-то отказавшееся и более не существующее.

Для другой реализации Javaspaces, смотрите на Javaspaces Блица. Это сохраняется и улучшается более регулярно (последний июль 2008 выпуска) и предлагает более производительную и управляемую реализацию Javaspace, чем значение по умолчанию outrigger предоставленный Sun.

1
ответ дан 1 December 2019 в 16:53
поделиться

Gigaspaces является успешной коммерческой реализацией JavaSpaces - так, я не сказал бы, что JavaSpaces мертв.

Вы могли бы смотреть на , Java Обменялся данными Инструментарий ( также эта статья ), чтобы видеть, отвечает ли это Вашим требованиям.

1
ответ дан 1 December 2019 в 16:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: