Tôi gặp sự cố sau. FindRoot thực sự nằm trong dll của bên thứ ba và tôi không có quyền kiểm soát nó. Nó phải được gọi qua Begin gọi. Đôi khi, phương thức FindRoot ném ngoại lệ. Điều này làm cho toàn bộ ứng dụng của tôi bị lỗi. Bây giờ làm thế nào để ngăn chặn ứng dụng của tôi bị rơi ngay cả khi FindRoot ném ngoại lệ.BeginInvoke ném ngoại lệ
delegate void AddRoot(double number);
public static void FindRoot(double number)
{
throw new Exception();/// sometimes is thrown.
}
static void back_DoWork(object sender, DoWorkEventArgs e)
{
AddRoot root = FindRoot;
root.BeginInvoke(12.0, root.EndInvoke, root);
}