Disallow copying or moving trace buffers
Change-Id: I104b8240a76c6d96ae176b0b26bdc2e4e5e3c180
Этот коммит содержится в:
@@ -36,7 +36,8 @@
|
||||
|
||||
namespace roctracer {
|
||||
|
||||
struct TraceBufferBase {
|
||||
class TraceBufferBase {
|
||||
public:
|
||||
static void FlushAll() {
|
||||
std::lock_guard lock(mutex_);
|
||||
|
||||
@@ -58,9 +59,13 @@ struct TraceBufferBase {
|
||||
TraceBufferBase(std::string name, int priority)
|
||||
: name_(std::move(name)), priority_(priority), next_(nullptr) {}
|
||||
|
||||
TraceBufferBase(const TraceBufferBase&) = delete;
|
||||
TraceBufferBase& operator=(const TraceBufferBase&) = delete;
|
||||
|
||||
virtual void Flush() = 0;
|
||||
|
||||
const std::string& name() const { return name_; }
|
||||
std::string name() && { return std::move(name_); }
|
||||
const std::string& name() const& { return name_; }
|
||||
|
||||
private:
|
||||
const std::string name_;
|
||||
|
||||
Ссылка в новой задаче
Block a user