цель кода -- определить, должен-ли раздел, согласно политике hal,
монтироваться автоматически, и смонтирован-ли он в действительности.
однако, по непонятной мне причине, на строчке "should_mount = storage_udi_obj.GetProperty..." возникает большая (~10 сек) задержка. если строчки поменять местами (сначала получать значение should_mount, а затем is_mounted), то задержка исчезает и код выполняется моментально. в чем причина?
import dbus
bus = dbus.SystemBus()
hal_manager_obj = bus.get_object("org.freedesktop.Hal",
"/org/freedesktop/Hal/Manager")
hal_manager = dbus.Interface(hal_manager_obj,
"org.freedesktop.Hal.Manager")
volume_udi_list = hal_manager.FindDeviceByCapability ("volume")
for volume_udi in volume_udi_list:
volume_udi_obj = bus.get_object ("org.freedesktop.Hal", volume_udi)
storage_udi = volume_udi_obj.GetProperty("block.storage_device",
dbus_interface="org.freedesktop.Hal.Device")
storage_udi_obj = bus.get_object ("org.freedesktop.Hal", storage_udi)
is_mounted = volume_udi_obj.GetProperty("volume.is_mounted",
dbus_interface="org.freedesktop.Hal.Device")
should_mount = storage_udi_obj.GetProperty("storage.policy.should_mount",
dbus_interface="org.freedesktop.Hal.Device")
print "%s (%s) - %s" % (volume_udi, should_mount, is_mounted)
зы: и подскажите хороший rtfm по dbus и hal.
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум [Ubuntu 11.04] Список последовательных девайсов (2011)
- Форум Python HAL CPU governor (2010)
- Форум [dbus][python] org.freedesktop.DBus.Error.UnknownMethod (2010)
- Форум Озвучиватель девайсов… (2008)
- Форум dbus + hal (2007)
- Форум Непонятки с hal (2005)
- Форум dbus + HAL + Slackware (Zen) (2006)
- Форум Удалить hal и dbus (2007)
- Форум HAL + dbus + ivman + Slackware (2005)
- Форум ivman+hal+dbus перестало работать (2009)