[Lldb-commits] [lldb] [lldb-dap] Implement a MemoryMonitor (PR #129332)
Walter Erquinigo via lldb-commits
lldb-commits at lists.llvm.org
Wed Mar 5 17:39:35 PST 2025
================
@@ -0,0 +1,110 @@
+//===-- MemoryMonitor.cpp -------------------------------------------------===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===----------------------------------------------------------------------===//
+
+#include "lldb/Host/MemoryMonitor.h"
+#include "lldb/Host/HostThread.h"
+#include "lldb/Host/ThreadLauncher.h"
+#include "lldb/Utility/LLDBLog.h"
+#include "lldb/Utility/Log.h"
+#include "llvm/ADT/ScopeExit.h"
+#include "llvm/Support/Error.h"
+#include <atomic>
+#include <cstddef>
+#include <cstdio>
+#include <cstring>
+
+#if defined(__linux__)
+#include <fcntl.h>
+#include <poll.h>
+#include <unistd.h>
+#endif
+
+#if defined(_WIN32)
+#include <memoryapi.h>
+#include <synchapi.h>
+#endif
+
+using namespace lldb_private;
+
+class MemoryMonitorPoll : public MemoryMonitor {
+public:
+ using MemoryMonitor::MemoryMonitor;
+
+ lldb::thread_result_t MonitorThread() {
+#if defined(__linux__)
+ struct pollfd fds;
----------------
walter-erquinigo wrote:
do you need to zero out this struct?
https://github.com/llvm/llvm-project/pull/129332
More information about the lldb-commits
mailing list