小编Sir*_*lih的帖子

为并发C#代码编写单元测试?

我一直试图解决这个问题很长一段时间了.我已经编写了一些示例代码,展示了lockC#中的用法.手动运行我的代码我可以看到它的工作方式应该如此,但当然我想写一个单元测试来确认我的代码.

我有以下ObjectStack.cs课程:

enum ExitCode
{
    Success = 0,
    Error = 1
}

public class ObjectStack
{
    private readonly Stack<Object> _objects = new Stack<object>();
    private readonly Object _lockObject = new Object();
    private const int NumOfPopIterations = 1000;

    public ObjectStack(IEnumerable<object> objects)
    {
        foreach (var anObject in objects) {
            Push(anObject);
        }
    }

    public void Push(object anObject)
    {
        _objects.Push(anObject);
    }

    public void Pop()
    {
        _objects.Pop();
    }

    public void ThreadSafeMultiPop()
    {
        for (var i = 0; i < NumOfPopIterations; i++) { …
Run Code Online (Sandbox Code Playgroud)

c# multithreading unit-testing thread-safety

2
推荐指数
1
解决办法
1826
查看次数

标签 统计

c# ×1

multithreading ×1

thread-safety ×1

unit-testing ×1