Презентации, доклады, проекты по информатике

Поиск данных в электронных таблицах
Поиск данных в электронных таблицах
В ТЕЧЕНИЕ НЕСКОЛЬКИХ ДНЕЙ МАЯ ПРОВОДИЛИСЬ НАБЛЮДЕНИЯ ЗА ПОГОДОЙ. РЕЗУЛЬТАТЫ НАБЛЮДЕНИЙ БЫЛИ ЗАНЕСЕНЫ В ТАБЛИЦУ: Сколько дней на протяжении указанного периода температура воздуха была равна 15°? Сколько дней на протяжении указанного периода давление было меньше 750 мм. рт. ст.? Сколько дней на протяжении указанного периода скорость ветра была меньше или равна 10 м/с? Сколько дней на протяжении указанного периода на улице шел дождь, и скорость ветра была не больше 10 м/с? Сколько дней на протяжении указанного периода температура была меньше 15° или скорость ветра была больше 10 м/с? СЛОЖНЫЕ ЛОГИЧЕСКИЕ ВЫРАЖЕНИЯ Сколько дней (на протяжении указанного периода) на улице шел дождь, и скорость ветра была не больше 10 м/с? (Осадки = «дождь») И (Ветер < = 10) Сколько дней (на протяжении указанного периода) температура была меньше 15° или скорость ветра была больше 10 м/с? (Температура < 15) ИЛИ (Ветер > 10)
Продолжить чтение
Синхронизация. Лекция12
Синхронизация. Лекция12
Синхронизация static int x=0; static void Main(string[] args) { for (int i = 0; i < 5; i++) { Thread myThread = new Thread(Count); myThread.Name = "Поток " + i.ToString(); myThread.Start(); } Console.ReadLine(); } public static void Count() { x = 1; for (int i = 1; i < 9; i++) { Console.WriteLine("{0}: {1}", Thread.CurrentThread.Name, x); x++; Thread.Sleep(100); } } Мы предполагаем, что метод выведет все значения x от 1 до 8 и так для каждого потока Синхронизация Lock - это ключевое слово C #; он предотвращает выполнение потоком того же блока кода, что и другой поток выполнения. Такой блок кода называется заблокированным кодом. Поэтому, если поток пытается ввести заблокированный код, он будет ждать, пока объект не будет выпущен. Для блокировки с ключевым словом lock используется объект-заглушка, в данном случае это переменная locker. public static void Count() { lock (locker) { x = 1; for (int i = 1; i < 9; i++) { Console.WriteLine("{0}: {1}", Thread.CurrentThread.Name, x); x++; Thread.Sleep(100); } } }
Продолжить чтение