diff options
author | Mataes <mataes2007@gmail.com> | 2018-04-27 20:39:22 +0300 |
---|---|---|
committer | Mataes <mataes2007@gmail.com> | 2018-04-27 20:39:22 +0300 |
commit | b9ce1d4d98525490ca1a38e2d9fd4f3369adb3e0 (patch) | |
tree | 787c80a909776c1c4d099b638c83c7977bb070e2 /libs/tdlib/td/memprof/memprof.h | |
parent | 5ed0126c16d061d6e87aa20c718e14608c66feec (diff) |
added tdlib library
Diffstat (limited to 'libs/tdlib/td/memprof/memprof.h')
-rw-r--r-- | libs/tdlib/td/memprof/memprof.h | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/libs/tdlib/td/memprof/memprof.h b/libs/tdlib/td/memprof/memprof.h new file mode 100644 index 0000000000..00e33f7380 --- /dev/null +++ b/libs/tdlib/td/memprof/memprof.h @@ -0,0 +1,27 @@ +// +// Copyright Aliaksei Levin (levlam@telegram.org), Arseny Smirnov (arseny30@gmail.com) 2014-2018 +// +// Distributed under the Boost Software License, Version 1.0. (See accompanying +// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) +// +#pragma once + +#include <array> +#include <cstddef> +#include <functional> + +constexpr std::size_t BACKTRACE_SHIFT = 2; +constexpr std::size_t BACKTRACE_HASHED_LENGTH = 6; +constexpr std::size_t BACKTRACE_LENGTH = 10; + +using Backtrace = std::array<void *, BACKTRACE_LENGTH>; +struct AllocInfo { + Backtrace backtrace; + std::size_t size; +}; + +bool is_memprof_on(); +std::size_t get_ht_size(); +double get_fast_backtrace_success_rate(); +void dump_alloc(const std::function<void(const AllocInfo &)> &func); +std::size_t get_used_memory_size(); |