Нужен пример, где отсутствие синхронизации потоков приводит к вычислению неверного результата - C#
Формулировка задачи:
Не могли бы вы мне помочь составить или найти пример кода, показывающего как отсутствие синхронизации потоков приводит к вычислению неверного результата? Нашел только на Java пример.
Решение задачи: «Нужен пример, где отсутствие синхронизации потоков приводит к вычислению неверного результата»
textual
Листинг программы
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading;
- namespace ConsoleApplication2 {
- class Program {
- static bool done = false;
- static object locker = new object();
- static void Main(string[] args) {
- new Thread(Go).Start();
- Go();
- Console.ReadLine();
- }
- static void Go() {
- //lock (locker) {
- if (!done) {
- Console.WriteLine("Done!");
- done = true;
- // }
- }
- }
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д