关于多线程的使用!c# 多线程 删除功能解决思路

关于多线程的使用!!c# 多线程 删除功能
楼主写了一个根据数据库记录删除本地图片的程序,在运行时一条一条删除,程序能正常运行并删除完成。但删除期间程序界面为假死状态,请问如果用多线程如何使用,新手~求高手~~谢谢~~
------解决方案--------------------
搞个进度条,等待页什么的,进程的话大致如下:


        private delegate void UpdatelableDelegate(int i);
        private void button1_Click(object sender, EventArgs e)
        {
            Thread a = new Thread(t);
            a.Start();
        }

        public void t()
        {
            UpdatelableDelegate up = new UpdatelableDelegate(updLable);
            for (int i = 0; i <= 100; i++)
            {
                this.Invoke(up, i);
                System.Threading.Thread.Sleep(100);
            }
        }

        private void updLable(int i)
        {
            this.label1.Text = i.ToString();
        }

按钮按下启动线程,然后线程里做处理然后更新界面,把我的label替换成进度条就行
------解决方案--------------------
private void button1_Click(object sender, EventArgs e)
        {
            Thread tr = new Thread(hotsale);//创建线程
            tr.Start();
        }

 public void 方法()
        {
              //dosomething
          }
要加进度条的话只要委托实现就行