1

Pythonを使ってタイマーを設定する方法を教えてください。私は現在select.poll/epollを使用しており、timerfdを作成するのが最も簡単な方法でした。

もう1つの見方は、ループチェックの後で、イベントのいずれかが時間が経過したかどうかを確認し、それらの関数を実行することです。

他の方法:

import select,time

timeout =0
epoll.register(rpm_file.fileno(), select.EPOLLPRI)

while True:
  events = epoll.poll(0)
  for fileno,event in events:
    #processing fd events...

  now = time.time()
  if now > timeout:
    # timeout events
4

1 に答える 1

2

この回答はLinuxにのみ適用されます。以下のlinuxfdというPythonパッケージを試すことができます。これには、timerfdのラッパーが含まれています:
https ://github.com/FrankAbelbeck/linuxfd

これは、Pythonパッケージインデックスによってインデックス付けされます:
https ://pypi.python.org/pypi/linuxfd/1.4.4

著者によるいくつかの例:
https ://abelbeck.wordpress.com/2014/01/24/more-on-linuxfd-an-example/

于 2017-12-04T04:29:23.853 に答える