170 похожих чатов

Есть горутина, в которой выполняется несколько джоб, как вернуть из

неё только первый результат при этом не дожидаясь и не прерывая выполнение оставшихся джоб?

16 ответов

15 просмотров

А как вы вообще возвращаете результат из горутины?

Lucky-Tea Автор вопроса
Daniel Podolsky
А как вы вообще возвращаете результат из горутины?

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

изначальная задумка не ясна, если горутина выполняет несколько заявок, почему надо возвращать 1 результат, а не все?

Lucky-Tea Автор вопроса
Alexey Gevondyan
изначальная задумка не ясна, если горутина выполня...

fail-fast подход, если не упал сразу же, то дальше всё ок будет

Lucky Tea
fail-fast подход, если не упал сразу же, то дальше...

хмм, ну канал с ошибками можно сделать. или структуры вида JobId (или просто Job (интерфейс)), error. в процессе обработки может возникнуть много разных ошибок, сразу ли или не сразу - не суть, возникает ошибка - пишешь в канал что эта заявка завершилась такой то ошибкой, и завершаешь ее обработку на этом

Roman Timofeev
А куда результат остальных джоб уходит?

типа пофиг на них) хз как так, но ладно

Lucky-Tea Автор вопроса
Roman Timofeev
А куда результат остальных джоб уходит?

результат у них только ок\не ок, потом можно по идшнику посмотреть результаты

Lucky Tea
результат у них только ок\не ок, потом можно по ид...

И ещё не очень понимаю про "первую" джобу. Первая которая выполнилась? Первая в списке submitted?

Lucky-Tea Автор вопроса
Roman Timofeev
И ещё не очень понимаю про "первую" джобу. Первая ...

первой выполненной. “посмотреть” результат можно обратившись в другой хендлер сервиса и получить там json

Lucky-Tea Автор вопроса
Lucky Tea
запуск воркеров в одной

Воркеров - да. А сами джобы процессятся в одном воркере?

Похожие вопросы

Обсуждают сегодня

Какой-то там пердун в 90-х решил, что есть какая-то разная типизация. Кого вообще это волнует?
КТ315
49
void terminal_scroll() { memmove(terminal_buffer, terminal_buffer + VGA_WIDTH, buffer_size - VGA_WIDTH); memset(terminal_buffer + buffer_size - VGA_WIDTH, 0, VGA_WIDTH); ...
Егор
47
Всем привет! Подскажите, пожалуйста, в чем ошибка? Настраиваю подключение к MySQL. Либы лежат рядом с exe. Все как по "учебнику"
Евгений
16
А можете как-то проверить меня по знаниям по ассемблеру?
A A
132
Здравствуйте! У меня появилась возможность купить книгу "Изучай Haskell во имя добра!". Но я где-то слышал, что эта книга устарела. Насколько это правда??
E
22
Здравствуйте! Я вот на stepic решаю задачи на хаскеле https://stepik.org/lesson/8443/step/8?unit=1578 мой код import Data.List (isInfixOf) removing :: String -> [String] ->...
E
10
Камрады, кто тесно работал с vtv, хотел уточнить. Ширина column задаётся жёстко на этапе создания дерева или можно в рантайме ее менять программно (не мышкой)?
Ed Doc
10
да ладно ... что там неочевидного ? глянуть в исх-ки датасета и/или кверика чтобы понять в каком месте и как выполняется обращения к св-вам blablaSQL - минутное дело, даже е...
Сергей
7
Здесь для arm кто-нибудь кодит ?
Nothing
52
Всем привет, у меня есть сервер принимающий входящие HTTP подключения, как проверить, что подключение было через прокси или нет, есть какие то поля в заголовках по которым мо...
Кибер Бомж
8
Карта сайта