Ben*_*Ben 12 .net c# windows process
在.NET中是否可以在子进程中执行方法(委托,静态方法,等等)? System.Diagnostics.Process似乎需要一个实际的文件名,这意味着需要一个单独的可执行文件.
我要做的是在单元测试中验证在进程退出时是否清理了OS资源.我知道可以使用CodeDOM或IL生成来创建这样的程序集并执行它,但单元测试的重点是隔离组件,而不是创建复杂性.出于同样的原因,我想完全避免单独的组装.
理想情况下,我会做类似的事情:
public static void CreateCounter()
{
var counter = new PerformanceCounter("category", "counter", "instance");
counter.InstanceLifetime = PerformanceCounterInstanceLifetime.Process;
}
[Test]
public void TestResourceDisposal()
{
// Start child process to execute CreateCounter()
...
// verify the resource is disposed
}
Run Code Online (Sandbox Code Playgroud)
首先,不,没有办法做到这一点.我处理意味着.exe.这不是Unix,您可以在其中分叉一个父进程副本的进程.
我只是创建一个小的.exe来运行.您是否需要使用不同的性能计数器运行测试?如果它适用于一个,那么它肯定会与它们中的任何一个一起使用吗?
| 归档时间: |
|
| 查看次数: |
3244 次 |
| 最近记录: |