static void Main(string[] args) { DisplayHandler Disp = new DisplayHandler(Display); IAsyncResult resultObj = Disp.BeginInvoke(null, null); //запуск асинхронного метода Console.WriteLine("Продолжается работа метода Main"); //работает в главной функции int result = Disp.EndInvoke(resultObj); // ожидаем завершение асинх. метода Console.WriteLine("Результат равен {0}", result); Console.ReadLine(); }
static void Main(string[] args) { DisplayHandler handler = new DisplayHandler(Display); IAsyncResult resultObj = handler.BeginInvoke(null, null); Console.WriteLine("Main is working"); int result = handler.EndInvoke(resultObj); Console.WriteLine("Result {0}", result); Console.ReadLine(); }
static void Main(string[] args) { DisplayHandler handler = new DisplayHandler(Display); IAsyncResult resultObj = handler.BeginInvoke(10, new AsyncCallback(AsyncCompleted), "Async invoke"); Console.WriteLine("Main continue working"); int res = handler.EndInvoke(resultObj); Console.WriteLine("Result: {0}", res); Console.ReadLine(); }
static void Main(string[] args) { DisplayHandler handler = new DisplayHandler(Display); IAsyncResult resultObj = handler.BeginInvoke(10, new AsyncCallback(AsyncCompleted), "Асинхронные вызовы"); Console.WriteLine("Продолжается работа метода Main"); int res = handler.EndInvoke(resultObj); Console.WriteLine("Результат: {0}", res); Console.ReadLine(); }
static void Main(string[] args) { DisplayHandler handler = new DisplayHandler(Display); // handler += new A().Firstly; IAsyncResult resultObj = handler.BeginInvoke(null, null); Console.WriteLine("Продолжается работа метода Main"); // int result = handler.EndInvoke(resultObj); // Console.WriteLine("Результат равен {0}", result); Console.WriteLine(); Console.WriteLine(); Console.WriteLine(); Console.ReadLine(); Console.WriteLine(resultObj.IsCompleted); }
private void Drav(int row, int column, double height, double width, Canvas canvas) { DisplayHandler dh = new DisplayHandler(callback); ViewNode.Coordinates.Clear(); mainCanvas = canvas; this.height = height; this.width = width; allStepWigth = Algo((_x) => { return(2 * _x + 1); }, row); allStepHeight = Algo((_x) => { return(2 * _x + 1); }, column); actionFieldW = Algo(_x => { return(Math.Round((_x - 300) / allStepWigth)); }, height); actionFieldH = Algo(_x => { return(Math.Round((_x - 150) / allStepHeight)); }, width); radius = actionFieldW < actionFieldH ? actionFieldW : actionFieldH; //matrixs = new PerceptronLib.Utility.Matrix<PerceptronLib.Nodes.ViewNode>(row, column); matrixs = Matrix <PerceptronLib.Nodes.ViewNode> .CreateIdentityMatrix(row, column); BrushConverter bc = new BrushConverter(); for (int i = 0; i < matrixs.Row; ++i) { for (int j = 0; j < matrixs.Column; ++j) { var node = new PerceptronLib.Nodes.ViewNode(); node.Row = i + 1; node.Column = j + 1; node.Fill = Config.Cfg.Colors.ColorEllipse;//(Brush)bc.ConvertFrom("#E5E7E9"); var el = node.GetEllipse($"X = {node.Column} Y = {node.Row}", radius); node.ActionLine += ActionLine; node.Action += ActionCheckBox; //var el = node.GetEllipse($"X = {i * radius + radius + (i * radius)} Y = {j * radius + radius + (j * radius)}", radius); node.XMap = i * radius + radius + (i * radius); node.YMap = j * radius + radius + (j * radius); ViewNode.Coordinates.Add(new Tuple <double, double>(node.XMap, node.YMap)); AddCanvas(el, node.XMap, node.YMap); matrixs[i, j] = node; } } matrixs.CreateIdentityMatrixInit(row, column); dh.BeginInvoke(null, null); }