У меня есть обработчик события click для кнопки, которая формирует ssh-соединение. Я хочу завершить эту функцию еще одним нажатием кнопки «Отмена».
Однако при выполнении обработчика событий обработчик события щелчка «отмена» не запускается во время выполнения первого обработчика. Я хочу переопределить первый обработчик с обработчиком «отмена».
private void button_sshconnection_Click(object sender, EventArgs e)
{ /* some code to create ssh connection */ }
private void button_cancel_Click(object sender, EventArgs e)
{ /* some code to terminate button_sshconnection_Click */ }
Я попробовал структуру кода, подобную приведенному выше коду, но, как я уже сказал, вторая функция не запускается, пока работает первая функция. Если структура неверна, может кто-нибудь сказать мне, как выполнить эту работу.
Заранее спасибо,
Онур
using
, который является синтаксическим сахаром дляtry {...} finally{m_Cancellation.Dispose()}
, сначала удалит экземпляр, а затем внешнийfinally
назначитnull
m_Cancellation
30.05.2019token
стоит извлечь (и отследить вместоCancellationTokenSource
) 30.05.2019token.IsCancellationRequested
иreturn
,break
и т. д. выполнение вашей процедуры вручную:if (token.IsCancellationRequested) return;
30.05.2019