Frage

Ich weiß, dass es eine Version von ASIO ist, die nicht im Boost-Namespace enthalten ist, aber selbst dann ASIO hängt von Boost, aber ich frage mich, ob es einen Weg gibt, ASIO zu erhalten, ohne Abhängigkeiten von Boost zu arbeiten (weil ich nicht-Boost in das Projekt, zu viele Gründe sind).

War es hilfreich?

Lösung

Nein, ich glaube nicht. ASIO ist für so lange die Überhöhung benutzen, wie ich davon gehört habe. Ich denke, sie sind sehr viel miteinander verbunden sind. Sie können jedoch in einem Werkzeug interessiert sein, bcp , was können Sie die minimale Teilmenge von boost extrahieren für die Bibliotheken benötigt, die Sie verwenden möchten.

Andere Tipps

Es gibt auch eine nicht-Boost-Version von Asio:

  

Asio kommt in zwei Varianten:. (Nicht-Boost) Asio und Boost.Asio

Siehe auch:

http://think-async.com/Asio/

Der "nicht-Boost Asio" hat seine eigenen Thread Bits statt Boost.Thread zu verwenden, aber es bedarf noch boost.date_time, Boost.Array, boost.utility, Boost.Bind, boost.shared_ptr ...

Es gibt keine Version von Asio, die ohne Boost-Abhängigkeit arbeiten kann.

Neue ASIO-Versionen können in einem Standalone-Modus ohne Boost-arbeiten. Dieser Modus wurde wahrscheinlich durch die C ++ 11 Unterstützung der Bibliothek aktiviert, weil es jetzt Standard Threads verwenden kann, Futures, etc. statt ihre Boost-Implementierung. Sie können einfach ASIO sind wie unten und genießen Sie:

#define ASIO_STANDALONE
#include <asio.hpp>
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top