Ich möchte alle Handler aus einem IO_service direkt vor der Wiederverwendung entfernen. Ist das möglich?Entfernen Sie alle Handler von einem boost :: asio :: io_service, ohne sie aufzurufen
Ich schreibe Komponententests, die eine asio::io_service
beinhalten. Zwischen jedem Testfall möchte ich die Handler vom globalen io_service
löschen. Ich dachte, dass io_service::reset
würde, aber es tut es nicht. reset()
ermöglicht nur die Wiederaufnahme des io_service
. Alle Handler aus dem letzten Testfall sind noch in der Warteschlange.
Ich muss dies nur für Komponententests tun, damit jeder verrückte Hack funktionieren würde.
Weitere Informationen:
Die io_service
von einem variablen deadline_timer
Mitglied ist. Die deadline_timer
ist Teil des Codes, den ich testen, so kann ich nicht ändern, wie es aufgebaut ist. Ich bekomme seine io_service
über die deadline_timer
's get_io_service
Methode.
Sie können keinen 'io_service' in Ihrer' setup() 'Methode erstellen und dann in Ihrer' teardown() 'Methode zerstören, oder? –