Вход от нескольких процессов до того же файла пользующаяся Библиотека Предприятия 4.1

Во-первых, обратите внимание, что Python допускает следующее (никакая потребность в круглой скобке):

q, r = divide(22, 7)

Относительно Вашего вопроса, так или иначе нет никакого жесткого правила. Для простого (и обычно изобретаемый) примеры, может казаться, что для заданной функции всегда возможно иметь единственную цель, приводящую к единственному значению. Однако при использовании Python для реальных приложений, Вы быстро сталкиваетесь со многими случаями, где возврат нескольких значений необходим, и приводит к более чистому коду.

Так, я сказал бы, делают то, что имеет смысл, и не пытайтесь соответствовать искусственному соглашению. Python поддерживает несколько возвращаемых значений, так используйте его в надлежащих случаях.

8
задан rikoe 13 November 2009 в 11:07
поделиться

3 ответа

Извините, но ответ отрицательный. File TraceListeners блокирует выходной файл, поэтому только один TraceListener может войти в файл.

Вы можете попробовать другие прослушиватели трассировки, не основанные на файлах (например, База данных, Журнал событий).

Другой вариант, о котором я могу подумать, - это написать свою собственную службу ведения журнала (вне процесса), которая будет регистрировать в файле и принимает LogEntries. Затем создайте настраиваемый прослушиватель трассировки, который отправляет сообщение в вашу службу.

Это может быть не очень хорошая идея, поскольку вам потребуется немного индивидуальной разработки, плюс это может повлиять на производительность, поскольку это вызов вне процесса. По сути, вы создаете свою собственную службу упрощенного псевдо-дистрибьютора.

4
ответ дан 5 December 2019 в 21:20
поделиться

EntLib блокирует файл журнала при записи в него. Следовательно, два процесса не могут записывать в один и тот же файл журнала.

Когда у нас возникла эта проблема, когда нам нужно было вести журнал из многих разных мест в одно и то же место, мы использовали ведение журнала базы данных.

Если вам 100 лет. % застрял в журнале в текстовом файле, тогда вы можете войти в отдельные файлы журнала, а затем написать программу для объединения этих файлов.

2
ответ дан 5 December 2019 в 21:20
поделиться

Я знаю, что это старый, но если вам все еще интересно. log4net поддерживает это:

http://logging.apache.org/log4net/release/faq.html#How do I get multiple process to log to the same file?
1
ответ дан 5 December 2019 в 21:20
поделиться
Другие вопросы по тегам:

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