小编Hed*_*Pig的帖子

ThreadLocal <T> - 什么是线程?(C#)

我正在C#中进行多线程处理(我只是为了好玩而学习),并意识到我可能不明白线程是什么!当我运行下面的代码时,我期望获得类似以下输出的内容.

T1: 11
T2: 11
T3: 11
T4: 11
T5: 11
T6: 11
Run Code Online (Sandbox Code Playgroud)

(可能以不同的顺序)

但是,我得到了类似的东西

T1: 11
T2: 11
T3: 12
T5: 12
T6: 13
T4: 11
Run Code Online (Sandbox Code Playgroud)

我假设每个任务(T1到T6)都是一个新线程,因此每个"本地"实例将被初始化为10并递增1.但它肯定不会发生这种情况.如果有人能够解释发生的事情和我错误的假设,我将非常感激.(我必须承认,我发现很难掌握线程,因为我找不到足够基本的东西来开始!)

using System;
using System.Threading;
using System.Threading.Tasks;

namespace TestThreads
{

    class TestThreadLocal
    {

        static void Main()
        {
            ThreadLocal<int> local = new ThreadLocal<int>(() =>
            {   return 10;
            });

            Task t1 = Task.Run(() =>
            {   local.Value++;
                Console.WriteLine("T1: " + local.Value);
            });

            Task t2 = Task.Run(() =>
            {   local.Value++;
                Console.WriteLine("T2: " + local.Value);
            });
            Task t3 …
Run Code Online (Sandbox Code Playgroud)

c# multithreading

5
推荐指数
1
解决办法
95
查看次数

在VBA中获取Excel工作表(如显示)的顺序

我想找到工作表的顺序,因为它显示在工作簿中.例如,假设我有一个以Sheet1,Sheet2和Sheet3开头的工作簿.然后用户在Sheet1之前将Sheet2拖动到左侧.然后我想让Sheet2返回1,Sheet1返回2(而Sheet3仍然返回3.)

我已经做了一些搜索,但找不到在VBA中确定这个的方法.

excel vba excel-vba

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

标签 统计

c# ×1

excel ×1

excel-vba ×1

multithreading ×1

vba ×1