Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C# Есть ли литература (учебники/самоучители и пр.) по практическому применению языка C#? Всем привет. Извиняюсь за тупой вопрос. Я начал изучать C#, но это все теория. Есть ли какая-либо литература (учебники/самоучители и пр.) по практическому (прикладному) применению языка? Где именно объясняют (разжевывают), что, как и почему именно так, а не эдак... Спасибо. https://www.cyberforum.ru/ csharp-beginners/ thread1978766.html Генератор строки C#
Всем привет! Подскажите пожалуйста, как сделать генератор строки из определенных слов и символов? То есть, есть определенный набор слов и символов(их не много, слов порядка 6-7, символов и того меньше) нужно чтобы генерировались все возможные комбинации этих слов и символов в одну строчку, с выводом в текстбох(еще лучше в файл .txt) нашел вот такой пример: Инструкция: 1.Кидаем на...
C# Как работать с временем без даты? https://www.cyberforum.ru/ csharp-beginners/ thread1978755.html
Мне нужно проверять в какое время запущена программа и в зависимости от этого выполнять определенные действия. Но DateTime хранит кроме времени и дату тоже. А мне нужно сравнивать разное время и проверять какое из них больше. Как мне работать только со временем исключая дату?
C# Копирование файлов Здравствуйте, вроде ничего сложного но что то пошло не так... есть массив с путями к файлам типа «\\pk1\dir\audio.wav» как по этому пути взять файл и скопировать на D:\ ? Добавлено через 2 минуты все стало на круги своя)))) File.Copy(path, newPath, true); https://www.cyberforum.ru/ csharp-beginners/ thread1978696.html
Преобразовать строку, удалив слова состоящие только из цифр C#
Пользователь вводит текст через пробел в textBox1 при нажатии на кнопку выводится в textBox2 Например. textBox1.Text = 1 qwe 321 wsa q2w 1qa И должен вывести в textBox2 qwe wsa q2w 1qa Подскажите плиз...
C# Вычисление дня недели и количества дней между двумя датами Ребят,мне нужно написать программу "Вычисление дня недели и количества дней между двумя датам" я не могу разобраться как сделать, что бы показывало эту разность между датами. https://www.cyberforum.ru/ csharp-beginners/ thread1978670.html
C# Определить минимум среди сумм модулей элементов диагоналей, параллельных побочной диагонали матрицы https://www.cyberforum.ru/ csharp-beginners/ thread1978649.html
Дана целочисленная квадратная матрица. Определить: • минимум среди сумм модулей элементов диагоналей, параллельных побочной диагонали матрицы. С самой матрицой проблем нет, но вот что я не понимаю: 1) как сделать чтобы программа считывала элементы диагоналей параллельных диагонали матрицы? 2) такие элементы с позицией , , т.е. те что угловые, будут считаться? 3) как разделить эти...
Реализация игровой механики C#
Здравствуйте! Хотелось бы узнать Вашего мнения относительно того, как реализовывать такую игровую механику: Все мы знаем игрушку HearthStone от близзардов. Стандартная пошаговая стратегия. Один ходит, другой видит его ход и отвечает своим, который видит первый. В нашем же случае игровая механика выглядит несколько иначе (типичный пример БК игры - Карнаж, Другие миры и им подобные): Игрок А в...
C# Очерёдность в MAIN https://www.cyberforum.ru/ csharp-beginners/ thread1978567.html
Доброго дня работникам мыша и клавы! Под конец рабочего дня со мной приключился казус. Итак, сильно упрощённая схема места происшествия: В майне определяю ip-адрес и вызываю два метода Пункт 1. Определяю ip-адрес как строку "0.0.0.0" Пункт 2. Начало прослушки HTTP //всё нормально слушается, получаю URI, вытаскиваю из строки нужное -...
C# Разработка приложения, вычислющего значение функции на заданном отрезке https://www.cyberforum.ru/ csharp-beginners/ thread1978549.html
Разработать консольное приложение, реализующую вычисление значения функции (согласно варианту) на заданном отрезке. Результатом работы приложения является таблица значений функции в 20 точках разбиения отрезка. И вот сам график Задача универская. За помощь спасибо.
DataTable: удалить пустые столбцы C#
Добрый день! Выгружаю данные из БД в DataTable. Некоторые столбцы могут быть пустыми. Хочу их удалить перед выводом результатов пользователю. Нашел в гугле способ bool IsColumnEmpty;
C# Вывести все номера телефонов, которые содержатся в сообщении Дана строка, в которой содержится осмысленное текстовое сообщение. Слова сообщения разделяются пробелами и знаками препинания. Обработать строку, используя методы класса Regex:В сообщении могут встречаться номера телефонов, записанные в формате xx-xxxx, xxx-xxx или xxx-xx-xx. Вывести все номера телефонов, которые содержатся в сообщении. https://www.cyberforum.ru/ csharp-beginners/ thread1978522.html
134 / 130 / 107
Регистрация: 17.03.2009
Сообщений: 364
11.05.2017, 21:26 0

Один backgroundworker и много методов - C# - Ответ 10425335

11.05.2017, 21:26. Показов 1827. Ответов 5
Метки (Все метки)

Ответ

Вот небольшой пример. Надо использовать несколько воркеров. С одним воркером надо использовать меотды последовательно. Для этого можно вызывать их внутри события DoWork или рестартовать воркер внутри RonWorkeCompleted.

С List<T> можно работать, но операции с им делать через lock

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
 
namespace BackgroundWorker
{
    class Program
    {
        
 
        static void Main(string[] args)
        {
            var worker1 = new System.ComponentModel.BackgroundWorker();            
            var array = new int[] {1,2,3,4,5};
            worker1.DoWork += Worker1OnDoWork;
            worker1.RunWorkerCompleted += WorkerCompleted;
 
            var tuple = new Tuple<string, string>("Задача 2", "Строка 2");
            var worker2 = new System.ComponentModel.BackgroundWorker();
            worker2.DoWork += Worker2OnDowork;
            worker2.RunWorkerCompleted += WorkerCompleted;
            
            
            worker1.RunWorkerAsync(array);
            worker2.RunWorkerAsync(tuple);
 
            Console.WriteLine("Главная нить, нажмите любую кнопку");
            Console.ReadKey();
        }
 
        private static void Worker2OnDowork(object sender, DoWorkEventArgs e)
        {
            var tuple = (Tuple<string, string>)e.Argument;
            Console.WriteLine(tuple.Item1+ " "+tuple.Item2);
            
        }
 
        private static void Worker1OnDoWork(object sender, DoWorkEventArgs e)
        {
            var arr = (int[])e.Argument;
            Console.WriteLine(String.Join(" ", arr));
            Thread.Sleep(1000);
        }
 
        private static void WorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
        {
            Console.WriteLine("Фоновая задача завершена");
            Console.ReadKey();
        }
 
    }
}


Вернуться к обсуждению:
Один backgroundworker и много методов C#
1
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.05.2017, 21:26
Готовые ответы и решения:

Много методов или много классов. Что лучше?
Имеется библиотека(ActiveX DLL), в которую, в своё время, было решено складировать функции,...

Запустить несколько методов в backgroundworker
Запустить несколько методов через backgroundworker, как это сделать? поднял!

Хочу один системник и много-много мониторов+клавиатур+мышей. Как?
Вопрос: как реализовать возможность одновременной работы на одном системнике нескольким людям...

Слишком много методов
Вот такая ошибка: Error:Execution failed for task ':app:transformClassesWithDexForDebug'. &gt;...

5
11.05.2017, 21:26
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.05.2017, 21:26
Помогаю со студенческими работами здесь

Как оптимизировать код, где используется много методов .Contains?
Здравствуйте! Есть задача поиска всех url'ов на каком то сайте и найти в них битые/небитые. Задачу...

Aspectj не срезает один из методов
есть класс class ToCut { @CutHere(&quot;1&quot;) public MyObject method1(args) {} @CutHere(&quot;2&quot;) ...

Запуск методов один за другим
Есть два метода A и B Как сделать так, что бы методы работали поочередно. Т.есть метод A...

Рандомно взять один из методов
как зделать чтоб метод рандомно выберал из 4 методов (причем рандомное количество раз?)

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru