首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从mono_threads_request_thread_dump()调用C# ()?

如何从mono_threads_request_thread_dump()调用C# ()?
EN

Stack Overflow用户
提问于 2018-09-20 15:26:01
回答 1查看 104关注 0票数 2

我想转储所有具有堆栈跟踪的线程,内部函数mono_threads_request_thread_dump()可以这样做,我可以从gdb调用它,可以从mono/linux上的C#代码调用它吗?

函数位于threads.h文件https://github.com/corngood/mono/blob/master/mono/metadata/threads.h中。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-09-20 15:43:43

使用DllImport of __Internal调用主机中的本机方法。

示例:

代码语言:javascript
复制
[DllImport("__Internal")]
public static extern void mono_threads_request_thread_dump();

public static void Main(string[] args)
{
    mono_threads_request_thread_dump();
    Console.WriteLine("Hello World!");
}

输出:

代码语言:javascript
复制
Full thread dump:

"<unnamed thread>"  at <unknown> <0xffffffff>
  at Console_ThreadDump.MainClass.Main (string[]) [0x00007] in /Volumes/Code/code/Projects/Console_ThreadDump/Console_ThreadDump/Program.cs:14
  at (wrapper runtime-invoke) <Module>.runtime_invoke_void_object (object,intptr,intptr,intptr) [0x00051] in <e3877a65d90742cebc8141de4055f006>:0

"Debugger agent"
"Finalizer"Hello World!

Press any key to continue...
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52428515

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档