62
1
using System;
2
using System.Threading;
3
using System.Threading.Tasks;
4
using System.Collections;
5
using System.Collections.Generic;
6
using System.Linq;
7
8
9
public class Program
10
{
11
public static void Main()
12
{
13
AccessForLoopVariables();
14
AccessForEachVariables();
15
PassCustomData();
16
}
17
18
private static void AccessForLoopVariables()
19
{
20
Task[] taskArray = new Task[10];
21
for(int i = 0; i < 10; i++)
22
{
23
taskArray[i] = Task.Factory.StartNew(() => Console.WriteLine($"Data: {i}"));
24
}
Cached Result
Data: 10
Data: 10
Data: 10
Data: 10
Data: 10
Data: 10
Data: 10
Data: 10
Data: 10
Data: 10
Data: Url-1
Data: Url-2
Data: Url-3
Data: Url-6
Data: Url-7
Data: Url-8
Data: Url-9
Data: Url-10
Data: Url-4
Data: Url-5
ThreadId 4 Index: 0
ThreadId 8 Index: 1
ThreadId 6 Index: 2
ThreadId 7 Index: 3
ThreadId 4 Index: 4
ThreadId 4 Index: 5
ThreadId 4 Index: 6
ThreadId 4 Index: 7
ThreadId 4 Index: 8
ThreadId 4 Index: 9
Data: 10
Data: 10
Data: 10
Data: 10
Data: 10
Data: 10
Data: 10
Data: 10
Data: 10
Data: Url-1
Data: Url-2
Data: Url-3
Data: Url-6
Data: Url-7
Data: Url-8
Data: Url-9
Data: Url-10
Data: Url-4
Data: Url-5
ThreadId 4 Index: 0
ThreadId 8 Index: 1
ThreadId 6 Index: 2
ThreadId 7 Index: 3
ThreadId 4 Index: 4
ThreadId 4 Index: 5
ThreadId 4 Index: 6
ThreadId 4 Index: 7
ThreadId 4 Index: 8
ThreadId 4 Index: 9