我希望能够确定创建当前方法所在线程的方法。我本来想用new StackFrame(int).GetMethod().Name实现,但是这个方法无法应用到当前线程。下面是我的代码示例:
private void doSomething(object sender, EventArgs e)
{
try
{
Thread thread = new Thread(new ParameterizedThreadStart(GenerateThreadMethod));
thread.Start(new Dictionary<String, Object>() {
{ "date" , Convert.ToDateTime(monthCalendar.SelectionRange.Start)},
{ "path", myList[myListBox.SelectedIndex][1] }
});
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
private void GenerateThreadMethod(Object obj)
{
Dictionary<String, Object> data = (Dictionary<String, Object>)obj;
DateTime date = (DateTime)data["date"];
String path = (String)data["path"];
//I want to find the name of doSomething() right here
doMoreThings(date, path);
}