public int GetData()
{
AppDomain domain=null;
string name = "king";
string value = "mm";
domain.SetData(name, (object)value); //此处报错说未将对象实例化,这是 为什么;
int ThreadID = AppDomain.GetCurrentThreadId();
return ThreadID;
}
资料是这么写的。为什么我会出错呢?
{
AppDomain domain=null;
string name = "king";
string value = "mm";
domain.SetData(name, (object)value); //此处报错说未将对象实例化,这是 为什么;
int ThreadID = AppDomain.GetCurrentThreadId();
return ThreadID;
}
资料是这么写的。为什么我会出错呢?
AppDomain domain=null;
//string name = "king";
//string value = "mm";
domain.SetData(name, (object)value); //此处报错说未将对象实例化,这是 为什么;
//int ThreadID = AppDomain.GetCurrentThreadId();
//return ThreadID;
看看注释后剩下的代码,AppDomain domain=null;然后你就domain.SetData(name, (object)value);
domain没有实例化嘛!
{
AppDomain domain=null;
string name = "king";
string strValue = "mm";
domain.SetData(name, (object)strValue); //此处报错说未将对象实例化,这是 为什么;
int ThreadID = AppDomain.GetCurrentThreadId();
return ThreadID;
}
还是一样,报错
AppDomain domain = AppDomain.CreateDomain("Temp");
public int GetData()
{
string name = "king";
string strvalue = "mm";
domain.SetData(name, (object)strvalue);
int ThreadID = AppDomain.GetCurrentThreadId();
return ThreadID;
}
这样还出错啊!
{
string name = "king";
string strvalue = "mm";
// domain.SetData(name, (object)strvalue);
AppDomain.CurrentDomain.SetData(name, (object)strvalue);
int ThreadID = AppDomain.GetCurrentThreadId();
return ThreadID;
}
现在改成这样了。不知道这个是否正确??
public int GetData()
{
AppDomain domain=System.AppDomain.CurrentDomain;
string name = "king";
string strValue = "mm";
domain.SetData(name, (object)strValue); //此处报错说未将对象实例化,这是 为什么;
int ThreadID = AppDomain.GetCurrentThreadId();
return ThreadID;
}
呵呵 public AppDomain domain;
object o = null;
public int GetData()
{
domain = AppDomain.CurrentDomain;
string name = "king";
string strvalue = "mm";
domain.SetData(name, (object)strvalue);
// AppDomain.CurrentDomain.SetData(name, (object)strvalue); // 为应用程序域属性分配值
o = domain.GetData(name);
int ThreadID = AppDomain.GetCurrentThreadId(); // 获取当前线程标识符。
return ThreadID;
} private void button1_Click(object sender, EventArgs e)
{
MessageBox.Show(this.GetData().ToString()+o);
}
AppDomain domain = AppDomain.CreateDomain("test"); //实例化
string name = "king";
string value = "mm";
domain.SetData(name, (object)value);
/*int ThreadID = AppDomain.GetCurrentThreadId(); 微软已经不建议开发人员使用AppDomain.GetCurrentThreadId();
'System.AppDomain.GetCurrentThreadId()' is obsolete: 'AppDomain.GetCurrentThreadId has been deprecated because it does not provide a stable Id when managed threads are running on fibers (aka lightweight threads). To get a stable identifier for a managed thread, use the ManagedThreadId property on Thread. */
int ThreadID = System.Threading.Thread.CurrentThread.ManagedThreadId;
return ThreadID;AppDomain.GetCurrentThreadId()实际上调用的是WIN32 API,其返回的是该线程在windows中的ThreadId;
Thread.ManagedThreadId 返回的是作为一个ManagedThread在.NET CLR中的ThreadId,所以这和windows的ThreadId是完全不同的
AppDomain.GetCurrentThreadId 方法 是个过时的API。谢了!~