PDA

View Full Version : سوال: از کار اندختن نخ های در حال اجرا



antisocial
سه شنبه 10 آذر 1388, 20:15 عصر
با سلام
من توی برنامم از نخ استفاده کردم اما هنگامی که میخوام امکان خاتمه دادن عملیات در برنامه رو به کاربر بدم یا ترید بی تفاوت به کارش ادامه میده یا انقدر دیر این کار رو انجام میده که دیگه فایده نداره چه طور میشه تمام ترید های در حال اجرا را سریع و بدون هنگ کردن از کار انداخت. یا حداقل هنگام بستن این فرم تمام ترید هاش از کار بیفته؟
خواهش میکنم راهنمایی کنید
با تشکر


void Reportcount()
{
if (rbpishshomare .Checked )
sql = "select count(*) from t_mobile where bile_number>=" + pishshomaree + "0000000 and bile_number<=" + pishshomaree + "9999999";
else
sql = "select count(*) from t_bile where mobile_number>=" + ebteda + " and bile_number<=" + enteha + "";
dt = ObjTabelUser.ReturnVauleTabel(sql, 1);
txtsize.Invoke(new new_delegate(new_t1));
}
public delegate void new_delegate();
void new_t1()
{
txttedadebile.Text = dt.Rows[0][0].ToString();
t.Abort();
if (t.ThreadState != ThreadState.Running )
{
t2 = new Thread(new ThreadStart(Reportcountsanad));
t2.Start();
}
}
private void btnstop_Click(object sender, EventArgs e)
{
t3.Abort();
//قسمتی که میخوام نخ ها رو از کار بندازم اینجاست
if (t != null)
t.Abort();
if (t2 != null)
t2.Abort();

mah.yar
سه شنبه 10 آذر 1388, 21:11 عصر
یا حداقل هنگام بستن این فرم تمام ترید هاش از کار بیفته؟






private void Form1_FormClosed(object sender, FormClosedEventArgs e)
{
Environment.Exit(Environment.ExitCode);

}