C# 如何获取当前方法所在的线程?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# 如何获取当前方法所在的线程?相关的知识,希望对你有一定的参考价值。

注意,不是当前线程,而是当前方法所在的线程,这么说可能有点不好理解,线程一直在轮流执行,比如A方法中有int a=0;int b=0;两条代码,b方法中有int c=0;int d=0;a,b方法在不同线程,现在断点到int a=0;下一句不一定是int b=0;如果在a内写Thread.CurrentThread.Abort();那么结束掉的可能是b方法所在的线程。。

那么 请问如何获取当前方法所在的线程呢?

Thread.CurrentThread
获得的就是执行改方法的线程,你肯定是开了很多线程,线程有自己的线程ID,你可以通过打印的方式将线程ID打印出来看看是不是结束正确的。

我不明白你所表述的代码逻辑,但是Thread.CurrentThread 绝对得到的是执行该方法的线程。
参考技术A 你好像没理解线程执行,方法是不会在线程里的,只是线程会执行某个方法。就好象你跟你家人去菜市场一样,你们是线程,菜市场是方法。

你如果想主动结束其他线程,你必须获取Thread引用,调用Abort,如果没有在执行之前,或者无法从某个静态域里面获取变量,你是没办法结束其他线程的。
参考技术B Thread.CurrentThread

c#线程停止

参考技术A c#线程停止方法:
1.我们需要在C#代码中添加Thread类,就可以开始设置。

2.然后我们就能在这里就能设置,设置ThreadStart类进行实例化。
3.此时我们就可以在这里启动并且和状态在执行,这是前提。
4.因此我们就可以在这里对Thread对象,进行中止操作。
5.为了程序的友好性,我们可以在这里输出一条提示。
6.此时我们运行程序,就可以看到当前的效果了。

以上是关于C# 如何获取当前方法所在的线程?的主要内容,如果未能解决你的问题,请参考以下文章

C# 如何获取当前应用程序的上一级路径

c# 动态获取当前屏幕中光标所在位置

c# 怎样获得想要的线程ID

delphi如何获取DLL所在的目录

c#获取当前运行程序所在的目录

如何获取linux内核线程的pid