libevent イベントの優先順位についていくつか質問があります
1 優先番号の範囲は?
2 マニュアルでBy default, libevent assigns the middle priority to all events unless their priority is explicitly set.
は、正確なデフォルトの優先度番号は何ですか?
3 優先度が高いほど数字が小さいか大きいか?
4 libevent には、イベントの優先度に関連する関数が 2 つあります。
event_priority_init()
とevent_priority_set
、それらの違いは何ですか?
5 event_priority_set(struct event *ev, int pri) の戻り値は? 次のような記事があることに気付きましたwhen an event is ready, it can't be set and calling of this function returns -1
。これが何を意味するのか本当に理解できませんか?誰かが少し説明できますか?ありがとう!
6 イベントの登録後に優先度を変更できますか? たとえば、最初は優先度を 10 に設定し、後で 5 に設定し、次に 10 に設定します。
ところで:現在、私のベース = event_init(); event_base_priority_init(base, 4);
event_set(ev, sockfd, EV_READ, callback, arg);
event_base_set(base, ev);
event_add(ev, NULL);
event_priority_set(&ev, 2);
.....
// set and add some other events
....
event_base_dispatch(base);
エラーなく動くのですが、の場所event_priority_set(&ev, 2)
が正しいかどうかわからないので、優先度が設定されているかどうかわかりません。