listBox1存放代理,listBox2存放链接,以及写文件,功能是取得链接,设置代理访问链接,如果代理有错,跳下一个代理继续,如果代理无误,取得网页,则写入硬盘。这些功能我已经实现,单线程也搞定。但是怎么开5个线程啊?麻烦谁写个代码实例给我。我是业余学程序的,太多的理论我看不得,代码的话我还能一点一点啃掉。。。
代理是可以重用的,所以代理不管多少个线程,都可以复用,直接给线程就好了
你只需要把链接分成5份就好了
//链接那我应该怎么分配代理,链接地址给5个线程呢?
追答那就改造的你方法呗,比如第一个读 1-100个链接,分配第一个代理,第二个线程依次类推
追问能不能写个怎么分配的代码啊?谢谢了~
我的方法是:
循环链接
{
循环代理
{
}
}
c#多线程有几种实现
1)使用Thread类创建一个新线程 static void Main(string[] args){ Thread thread = new Thread(delegate(){ for (int i = 0; i <= 10; i++){ Console.WriteLine(Thread.CurrentThread.Name + ":" + i); Thread.Sleep(100); } }); thread.Name = "t1 thread";...
C#多线程编程实例
} else { \/\/当前活动线程加 m_nActive++; } m_mutex ReleaseMutex(); \/\/存储锁标志为Reader System LocalDataStoreSlot slot = Thread GetNamedDataSlot(m_strThreadSlotName); object obj = Thread GetData( slot ); LockFlags flag = LockFlags None; if( obj != null ) flag = (LockFlags...
C#怎么开辟多线程,要是多了是否会出错,出错了怎么办?
static void Main(string[] args){ \/\/先要创建线程 Thread threadOne = new Thread(new ThreadStart(MethodOne));\/\/同理创建threadTwo、threadThree多个线程 \/\/启动线程 threadOne.Start();\/\/主线程的具体执行代码 ...} \/\/threadOne的执行代码 public static void MethodOne(){ ...} \/\/同理...
如何用C#编写多线程的与窗体交互的程序
C#中的UI元素是主线程创建的,也只能通过创建它们的主线程进行修改,这是因为UI元素本身不是线程安全的,多线程操作会发生不可预料的错误。因此,默认情况下,尝试从其他线程操作UI元素会引发异常,虽然你可以通过下面的代码强制允许UI元素的跨线程操作:CheckForIllegalCrossThreadCalls = false;但是,这样做...
c#多线程,在子线程里播放mp3声音,程序无法播出声音。。我是菜鸟!_百度...
线程写法可以下面这样简单,先把你上面的简化一下 private void button1_Click(object sender, EventArgs e) { Thread t = new Thread(F); t.IsBackground = true; t.Start(); } void F() { \/\/播放声音 } ...
如何用C#实现多线程TCP协议的服务器端程序
用C#实现多线程TCP协议的服务器端程序:\/\/ \/\/\/ Tcp客户线程类(服务端),ThreadServerProcessor 线程产生的客户连接,用该线程读写 \/\/\/ public class ThreadClientProcessor { \/\/Tcp连接实例 private TcpClient tcpClient;\/\/消息框,本来想写日志用 private System.Windows.Forms.ListBox MessageList...
c#编程中,怎样使用多线程处理数据库读取的信息
\/\/你分给5个线程 他也不是同时出来的,多线程还是要等CPU闲下来才能工作的。。。\/\/非要这样做 参考如下 给你举个例子 取第二条记录。Thread threadGetTop2=new Thead(new ThreadStart(GetTop2));threadGetTop2.Start();private void GetTop2(){ \/\/这里用ADO.NET打开连接 string sql="se...
C# 如何获得当前程序运行中的所有线程。并且 暂停 和 恢复运行
PThreadsInfo = ^TThreadsInfo;TThreadsInfo = record dwThreadID : dword;dwUsage : dword;Priority : dword;end;var hSnapShot: THandle;ThreadsInfo : PThreadsInfo;ThreadEntry32: TThreadEntry32;begin hList := TList.Create;hList.Clear;hSnapShot := CreateToolhelp32Snapshot(TH32CS...
C#winform实现多线程并行运行,主要功能是有三个listview 讲数据并行...
using System; using System.Windows.Forms; using System.Threading; namespace WindowsFormsApplication2 { public partial class Form1 : Form { public delegate void timer(); public Form1() { InitializeComponent(); Thread t = new Thread(TWork); t.Start(); } private void TWork() { \/...
关于C#中多线程并发的处理方案
0就是stdin1就是stdout2就是strerrstdout--标准输出设备(printf(".."))同stdout。stderr--标准错误输出设备两者默认向屏幕输出。但如果用转向标准输出到磁盘文件,则可看出两者区别。stdout输出到磁盘文件,stderr在屏幕。用法:fprintf(stderr,"Can'topenit!\\n");fprintf(stdout,"Can'topenit!\\n"...