相关疑难解决方法(0)

为什么C#中的堆栈大小正好是1 MB?

今天的PC有大量的物理RAM,但是C#的堆栈大小对于32位进程只有1 MB而对于64位进程只有4 MB(C#中的堆栈容量).

为什么CLR中的堆栈大小仍然如此有限?

为什么它恰好是1 MB(4 MB)(而不是2 MB或512 KB)?为什么决定使用这些金额?

对该决定背后的考虑因素和原因感兴趣.

c# clr stack stack-size

87
推荐指数
2
解决办法
3万
查看次数

wait 会使异步代码同步吗?

我正在学习异步和等待在编程中如何工作。我在互联网上看到这个例子,说这是异步代码:

class Program
{
    static async Task Main(string[] args)
    {
        Method2();
        var count = await Method1();
        Method3(count);
        Console.ReadKey();
    }

    static async Task<int> Method1()
    {
        int count = 0;
        await Task.Run(() =>
        {
            for (int i = 0; i < 3; i++)
            {
                Console.WriteLine(" Method 1");
                count += 1;
            }
        });
        return count;
    }

    static void Method2()
    {
        for (int i = 0; i < 3; i++)
        {
            Console.WriteLine(" Method 2");
        }
    }

    static void Method3(int count)
    {
        Console.WriteLine("Total count is …
Run Code Online (Sandbox Code Playgroud)

c# asynchronous async-await

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

标签 统计

c# ×2

async-await ×1

asynchronous ×1

clr ×1

stack ×1

stack-size ×1