怎么根据条件停止BackgroundWorker线程,再根据条件再打开线程

如何根据条件停止BackgroundWorker线程,再根据条件再打开线程?
在一个循环体中打开四个线程同时进行四个操作(这四个操作是较费时间的),如何才能让这个四个操作结束后再进行下一次循环。
如:
VB.NET code
for i as integer =0 to 1000
    BackgroundWorker1_DoWork()
    BackgroundWorker2_DoWork()
    BackgroundWorker3_DoWork()
    BackgroundWorker4_DoWork()
    '要等待以上四个操作结束后再进行一个次循环
next


请指点迷津。

另外,打开四个线程,我在项目内加入四个backgroundworker控件,不知道是不是正确的做法?


------解决方案--------------------
不用控件。

用thread 控制比较好。。
------解决方案--------------------
可以阻塞的话,用Join就可以。
Thread.Join Method

Blocks the calling thread until a thread terminates, while continuing to perform standard COM and SendMessage pumping.
------解决方案--------------------
用事件