我希望每个帖子都运行不同的网址。
我写这样的代码:
static void Main()
{
var t1 = new Thread(new ThreadStart(RegisterLink))
{
Name = "Thread1"
};
t1.Start();
var t2 = new Thread(new ThreadStart(RegisterLink))
{
Name = "Thread2"
};
t2.Start();
t1.Join();
t2.Join();
}
static bool start_Link()
{
int idx = int.Parse(Thread.CurrentThread.Name.Replace("Thread", "")) - 1;
try
{
foreach (DataRow dtRow in dtLink.Rows)
{
link[idx] = dtRow["get_link"].ToString();
browser_array[idx].DeleteAllCookies();
browser_array[idx].GoToUrl(link[idx]);
}
}
}
static void RegisterLink()
{
int idx = int.Parse(Thread.CurrentThread.Name.Replace("Thread", "")) - 1;
try
{
switch (stepRun[idx])
{
case 0:
start_new();
break;
case 1:
compare();
break;
}
}
catch
{
ExitALL();
return;
}
}
dtLink
是DataTable包含所有链接。
示例:我有两个链接{0:google.com,1:reddit.com}。它只打开链接1是reddit.com。
使用Thread时,我有很多困难尝试调试。
答案 0 :(得分:0)
您可以使用对象[]将参数传递给线程。
例如
static bool start_link(object data)
{
object [] arguments = data as object[];
int idx = (int) arguments[0];
}
Thread t1 = new Thread(start_link) { Name = "Thread 1"};
t1.Start(new object[]{ 0 });