Форум программистов, компьютерный форум, киберфорум
Unity, Unity3D
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
 Аватар для Sayanchik777
9 / 9 / 6
Регистрация: 09.05.2015
Сообщений: 529

Передать на выполнение первичному потоку из вторичного

21.04.2019, 21:32. Показов 1160. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ребята такая ситуация, получаю данные(клиент юнити) от сервера из события aClient.ReceiveData, текст приходит он он в контексте вторичного потока. как 33 строку передать на выполнение первичному потоку?
ссылки на пример (там проект Юнити, скомпилин сервер)
Кликните здесь для просмотра всего текста

https://dropmefiles.com/5wDGO
https://filecloud.me/utmvzfng8u6p.html
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
21.04.2019, 21:32
Ответы с готовыми решениями:

Как из вторичного потока передать на выполнение другому вторичному потоку?
как как из вторичного потока передать на выполнение главному потоку я знаю. Вопрос: как из вторичного потока передать на выполнение другому...

Как передать массив потоку
Добрый день. Возник вопрос, как правильно передать массив потоку? Thread potok; private void button1_Click(object sender,...

Как передать параметр потоку?
Добрый день, возник вопрос как передать параметр потоку, нужно чтобы каждый запрос WebRequest request =...

2
Эксперт .NETАвтор FAQ
 Аватар для Storm23
10427 / 5157 / 1825
Регистрация: 11.01.2015
Сообщений: 6,226
Записей в блоге: 34
22.04.2019, 00:31
Цитата Сообщение от Sayanchik777 Посмотреть сообщение
текст приходит он он в контексте вторичного потока. как 33 строку передать на выполнение первичному потоку?
Нужно создать очередь сообщений. Вторичный поток будет класть в очередь сообщения, а главный поток будет брать из очереди сообщения и отображать их:
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
using MysticMAG.TcpIp.AsyncClient;
using System.Collections.Concurrent;
using System.Threading;
using UnityEngine;
using UnityEngine.UI;
 
public class Action : MonoBehaviour
{
    private AClient aClient;
    private Text receivedText;
    private void Awake()
    {
        Debug.Log("ID Потока - " + Thread.CurrentThread.ManagedThreadId + " из Awake");
        receivedText = GameObject.Find("ReceivedText").GetComponent<Text>();
    }
 
    private void Start()
    {
        this.aClient = new AClient();
        this.aClient.ReceiveData += AClient_ReceiveData;
        receivedText.text = "Received text:";
    }
 
    ConcurrentQueue<string> messages = new ConcurrentQueue<string>();
 
    private void AClient_ReceiveData(ICMessage cMessage)
    {
        // AClient_ReceiveData Выполняется во ВТОРИЧНОМ потоке
        Debug.Log("ID Потока - " + Thread.CurrentThread.ManagedThreadId + " из ReceiveData");
 
        Debug.Log("Received text: " + cMessage.GetMessage);
 
        //Как передать на выполнение главному потоку?
        messages.Enqueue(cMessage.GetMessage);
    }
 
    private void Update()
    {
        string msg;
 
        if(messages.TryDequeue(out msg))
            receivedText.text = msg;
    }
 
    public void Button1()
    {
        this.aClient.Connect("192.168.0.114", 8888);
    }
}
0
 Аватар для Cr0c
753 / 600 / 204
Регистрация: 06.08.2015
Сообщений: 2,432
22.04.2019, 03:20
Общий стек данных создаёшь, в него пишешь из потоков, в основном потоке обрабатываешь. Можно и делегатами кидать, если хочешь вызывать события.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
22.04.2019, 03:20
Помогаю со студенческими работами здесь

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

Как передать файл по ssl потоку
Добрый день. Подскажите такой вопрос: как передать файл по ssl потоку в C#? Пишу так: byte file = Encoding.UTF8.GetBytes(Soob); ...

Как передать второму потоку n строк?
Здравствуйте! Главный поток получает от пользователя n-строк с консоли, передает их второму потоку. Как это можно реализовать?

Как переменной потоку передать значение (параметр)
Ребята разобрался с потоками, довольно не плохая штука )), есть маленький вопрос: Как можно переменной потоку передать значение? переменная...

Передать много параметров потоку до создания. Рефакторинг
Ситуация: есть класс, который контролирует фоновый поток (TThread). Этот поток для своей работы должен знать много параметров: ...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru