diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2017-08-24 18:06:27 +0200 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2017-08-24 18:06:27 +0200 |
commit | 69c0d28f5972aa562acb2c8b944c38a100b97cb8 (patch) | |
tree | 523d41b8c0eca7f5e65b9eb07870d4b23bb8a839 /documentapi/src | |
parent | 732e00a7c5b938219b6f6387ba45a979ec200210 (diff) |
Move the shared_ptr to further reduce pipeline stalls and big stop signs.
Diffstat (limited to 'documentapi/src')
-rw-r--r-- | documentapi/src/vespa/documentapi/messagebus/messages/putdocumentmessage.h | 1 | ||||
-rw-r--r-- | documentapi/src/vespa/documentapi/messagebus/messages/updatedocumentmessage.h | 6 |
2 files changed, 4 insertions, 3 deletions
diff --git a/documentapi/src/vespa/documentapi/messagebus/messages/putdocumentmessage.h b/documentapi/src/vespa/documentapi/messagebus/messages/putdocumentmessage.h index 9bc1c088dfa..f86e594dfa4 100644 --- a/documentapi/src/vespa/documentapi/messagebus/messages/putdocumentmessage.h +++ b/documentapi/src/vespa/documentapi/messagebus/messages/putdocumentmessage.h @@ -38,6 +38,7 @@ public: * @return The document. */ const DocumentSP & getDocumentSP() const { return _document; } + DocumentSP stealDocument() { return std::move(_document); } const document::Document & getDocument() const { return *_document; } /** diff --git a/documentapi/src/vespa/documentapi/messagebus/messages/updatedocumentmessage.h b/documentapi/src/vespa/documentapi/messagebus/messages/updatedocumentmessage.h index 3a320960515..55cb22e05e0 100644 --- a/documentapi/src/vespa/documentapi/messagebus/messages/updatedocumentmessage.h +++ b/documentapi/src/vespa/documentapi/messagebus/messages/updatedocumentmessage.h @@ -21,8 +21,8 @@ public: /** * Convenience typedef. */ - typedef std::unique_ptr<UpdateDocumentMessage> UP; - typedef std::shared_ptr<UpdateDocumentMessage> SP; + using UP = std::unique_ptr<UpdateDocumentMessage>; + using SP = std::shared_ptr<UpdateDocumentMessage>; /** * Constructs a new document message for deserialization. @@ -42,7 +42,7 @@ public: * * @return The update. */ - const DocumentUpdateSP & getDocumentUpdateSP() const { return _documentUpdate; } + DocumentUpdateSP stealDocumentUpdate() const { return std::move(_documentUpdate); } const document::DocumentUpdate & getDocumentUpdate() const { return *_documentUpdate; } /** * Sets the document update to perform. |