您的位置:首页 > 其它

进程、应用程序域、对象上下文

2016-03-16 23:16 134 查看
1.进程可以承载一组相关的.net程序集,应用程序域(AppDomain)是对该进程的逻辑细分,一个应用程序域进一步被细分为多个上下文边界;使用上下文的概念,CLR能够确保恰当的控制那些带特殊运行时要求的对象。

2.每一个windows进程都恰好包含一个用作程序入口点(entry point)的主线程,线程是进程中的基本的执行单元,进程的入口点创建的第一个线程被成为主线程。主线程可以次线程,无论是主次线程,每一个线程都是进程中的一个独立执行单元,他们能够同时访问那些共享数据。在基于时间片轮转的调度中,当一个线程的时间片用完的时候,他会被挂起,以便执行其他线程。对于线程来说需要知道挂起前的状态,以便恢复,这些数据将写入TLS(线程本地存储)中,并且他们还要获得一个独立的调用栈。

3..net进程交互

System.Diagnostics命名空间定义的许多类型与进程相关。

public Dictionary<int, string> Func5()  //获取当前运行的进程,并返回进程的相关信息。

        {

            var runningProcess = from proc in Process.GetProcesses(".") 

                                 orderby proc.Id select proc;

            Dictionary<int, string> dicRunningProcess = new Dictionary<int, string>();

            foreach (var item in runningProcess)

            { 

                string info = string.Format("PID:{0}--Name:{1}",item.Id,item.ProcessName);

                dicRunningProcess[item.Id] = info;

            }

            return dicRunningProcess;

        }

ProcessThread类型并不用来创建、挂起、或停止线程,而只是用来获取线程诊断信息。Process.Start()、Process.Kill()用来启动和结束进程。

4.....
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: