В описании Python-UNO bridge (
http://udk.openoffice.org/python/python-bridge.html) в конце первого примера HelloWorld есть загадочный комментарий, смысл которого для меня не понятен:
# Do a nasty thing before exiting the python process. In case the
# last call is a oneway call (e.g. see idl-spec of insertString),
# it must be forced out of the remote-bridge caches before python
# exits the process. Otherwise, the oneway call may or may not reach
# the target object.
# I do this here by calling a cheap synchronous call (getPropertyValue).
ctx.ServiceManager
У меня получается следующее (может, что-то неправильно):
Перед выходом из питона делаем рискованную вещь. В случае, если последний вызов является односторонним (т.е. см. idl-spec of insertString), его нужно вытеснить из remote-bridge кэша перед тем, как питон завершит процесс. Иначе достижение целевого объекта односторонним вызовом не гарантировано.
В приведенном примере я делаю это посредством легкого синхронного вызова (getPropertyValue).
Пожалуй, “и хрюкатали зелюки как мумзики в мове” для меня будет понятнее, чем этот текст. Текст непонятен настолько, что я даже не знаю, что спросить :). Что такое idl-spec, insertString, remote-bridge кэш, “целевой объект”, “односторонний вызов”, “легкий синхронный вызов”?