Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 26.11.2016
Сообщений: 1
1

Два потока и взаимодействие между ними

26.11.2016, 21:58. Показов 1214. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
всем привет, прочел куча материала по потокам, так и не нашел для себя ответа
есть основной класс thread_one
работает он в основном потоке
нужно создать класс thread_two, который будет работать в другом потоке "вечно" пока не закрыть приложение (первый поток)

я это представляю как работающего демона, который либо что то считает, либо ждет пока поступят данные для расчета
по такому принципу работают большинство демонов на PHP, собственно на PHP моя зада реализуется без проблем


далее в классе thread_one что то произошло, и он должен вызвать метод из thread_two
к примеру thread_two.прибавить_единицу_и_вернуть_результат_в_переменную_thread_one_результ ат(1234);
работа только в этих двух классах, не каких форм компонентов списков и тд...

пример классов thread_one и thread_two
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
new thread_one();
 
thread_one{
 
  static public thread_one _static;
  
  public int _результат=0;
 
  public thread_one(){
    thread_one._static=this;
    //  создаем второй поток с классом thread_two
  }
  public void get_result(){
    thread_two._static.прибавить_единицу_и_вернуть_результат_в_переменную_thread_one_результат(this._результат);
  }
}
 
thread_two{
 
  static public thread_two _static;
  
  public thread_two(){
    thread_two._static=this;
  }
 
  public void прибавить_единицу_и_вернуть_результат_в_переменную_thread_one_результат(int полученное_значение){
    thread_one._static._результат=полученное_значение+1;
  }
  
}
из всего про читаного, я сделал вывод что слово "поток" в большинстве случаев громко сказано, по факту запускается лишь один метод, который, да может создать в себе классы помогалки, сделать какой нибудь расчет и умереть, идеальное сходство с работой PHP кода, запустил, рассчитал, выкинул (и да это все будет в другом потоке) но я бы назвал это мусорка, что то сделать не замедляя при этом основной ПОТОК

так вот вопрос в студию) возможно ли реализовать этот способ?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.11.2016, 21:58
Ответы с готовыми решениями:

Потоки и взаимодействие между ними
Всем привет! С потоками вот только начал разбираться, поэтому вопрос нубский. Каким образом...

Взаимодействие контроллеров домена при обрыве соединения между ними
Есть DC1 - основной контроллер домена (dc1.domain.com) и DC2 дополнительный контроллер домена...

Создание потока через указатель на функцию и какая между ними разница ?
в чем разница создавать поток на функцию std::thread thr = std::thread(test); ...

Два дива по бокам,а один между ними
Как сделать, что бы 2 дива были по бокам,а один между ними?

1
Неадекват
1492 / 1230 / 246
Регистрация: 02.04.2010
Сообщений: 2,789
27.11.2016, 04:13 2
Суть не постигли вы Посмотрите async/await он подойдет.
0
27.11.2016, 04:13
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.11.2016, 04:13
Помогаю со студенческими работами здесь

Создать два activity, организовать переход между ними
Нужно создать два activity. Первое должно содержать кнопку btn1. Второе должно содержать текст...

Ввести два числа и посчитать сумму чисел между ними
Задание: ввести предел чисел через цикл for. Чтобы в конце код подсчитал сколько чисел со знаком +,...

Задается два года, определить количество дней между ними
Задается два года, определить количество дней между ними (Recon, не знаю что это но сказали типа...

Сравнить два списка из Excel и вывести разницу между ними
Есть два списка, грузятся в DatagridView1 с первой книги Excel и в DataGridView2 со второй книги...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru