@CSharpChatЭта группа больше не существует

Страница 1483 из 1888
Nikita
14.07.2017
12:40:10
10 килорублей за 20 часов для джуна - вполне ок

студент же поди

курс второй-третий

Андрюшка :D
14.07.2017
12:41:02
студент же поди
она, помоему, только-только универ закончила

Google
Nikita
14.07.2017
12:42:53
ну вот

Vova
14.07.2017
12:47:45
Вопрос про async и Parallel.Foreach. Есть большой список items (300000), его нужно обработать, библа, которая это делает написана в парадигме async. Я тупо беру Parallel.Foreach и в X потоков обрабатываю а метод одного из объектов библы юзаю просто . Wait(). Т.е. каг бы асинхронный код запускаю синхронно, внутри многоThread-ового foreach. И короче... виснет проклятая. Проделав 99% работы. Как правильно сделать? Насколько помню Parallel.Foreach не дружит хорошо с async. Как оказалось даже с .Wait() (ну или .Result() ).

Egor
14.07.2017
12:48:51
/me ничо не понял

Nikita
14.07.2017
12:49:48
у него скорее всего асинхронщина как-то завязана на контекст синхронизации

который, есесно, во время выполнения Parallel.Foeach оказывается заблокирован

Vova
14.07.2017
12:51:56
Виснет под конец: Parallel.ForEach(prices, price => { bibla.RunAsync(price).Wait(); }); Не виснет: foreach(var price in prices) bibla.RunAsync(price).Wait();

Egor
14.07.2017
12:52:44
какой-то бессмысленный код

await Task.WhenAll(prices.Select(p => bibla.RunAsync(p)));

Nikita
14.07.2017
12:53:25
низя так

его разорвёт

Vova
14.07.2017
12:53:37
я про то же

Egor
14.07.2017
12:53:38
ты мне?

Nikita
14.07.2017
12:53:42
от количества одновременно зашедуленых тасок

Google
Nikita
14.07.2017
12:53:43
да

Egor
14.07.2017
12:53:45
скедулер написать

Vova
14.07.2017
12:53:47
до миллиона items

Egor
14.07.2017
12:53:47
свой

с лимитом

Nikita
14.07.2017
12:54:18
я обычно в таких случаях держу список в настоящий момент работающих тасок

и на них делаю WhenAny

и дошедуливаю в замен отработавших

Vova
14.07.2017
12:54:58
хотелось без своего огорода...

Alexander
14.07.2017
12:55:21
а что с await?

Vova
14.07.2017
12:55:51
а что с await?
await внутри Parallel.Foreach низя

Alexander
14.07.2017
12:55:54
Parallel.ForEach(prices, async price => { await bibla.RunAsync(price) });

?

Nikita
14.07.2017
12:56:22
Egor тем временем в авалонию замержили таки интеграцию с WPF

надо понять, как должна выглядеть встройка в Cocoa

будет ли достаточно AvaloniaView, как в ios-версии?

ну и возникает вопрос, как либу под Xamarin.Mac собирать из винды

Egor
14.07.2017
12:59:39
наверное - никак :( впф - круто. в Cocoa - у меня есть NSView в который я хотел бы вложить авалонию. при ресайзе нсвью чтобы авалония тоже ресайзилась)

Nikita
14.07.2017
13:00:00
ну то есть как AvaloniaView под ios сделана

т. е. мы эту интеграцию не можем вкрутить в основное дерево исходников, получается

Google
Nikita
14.07.2017
13:01:40
точнее как, я могу выставить из основной либы наружу какой-нибудь класс-хэлпер, выдающий IntPtr от нативного NSView

и с ним как-то работать из либы под Xamarin.Mac

Elnas
14.07.2017
13:07:29
на самом деле зря вы так про недоджуна, много таких тестировал, сперва ржал, а потом просто понял, что многие из них идут на собеседование чтобы разведать обстановку, узнать что нужно знать и т.п.

т.к. 2 из них вернулись потом с неплохой подготовкой

Nikita
14.07.2017
13:09:51
ну так их надо отправлять с напутствием вида "вот это подучи, вот это почитай, через месяц приходи"

а не ржать

Elnas
14.07.2017
13:10:43
офк так и говорил, но никто же мне не запрещал про себя ржать, когда человек говорит, что администрировал БД но не может написать простой селект

Egor
14.07.2017
13:16:15
Dmitriy
14.07.2017
13:21:44
Как думаете стоит ли хранить настройки приложения в бд? Или пользоватся стандартными возможностями которые есть у вин.формах ?

Андрей
14.07.2017
13:22:12
в конфигах храни

Dmitriy
14.07.2017
13:22:30
При этом надо учитывать бурное развитие приложения и что структура настроек будет меняться

Андрей
14.07.2017
13:22:58
ну и типа стоит вопрос переносимости и расширяемости - переносить и расширять БД дороже чем конфиг файл

Nikita
14.07.2017
13:24:15
любую структуру можно в такой формат упихнуть

Андрей
14.07.2017
13:25:36
можешь юзать жысон для хранения настроек

Dmitriy
14.07.2017
13:25:41
любую структуру можно в такой формат упихнуть
Чет я туплю, а что это за структура?

Vova
14.07.2017
13:26:04
Как думаете стоит ли хранить настройки приложения в бд? Или пользоватся стандартными возможностями которые есть у вин.формах ?
я храню зашифрованными в MongoDB в облаке. Вообще всё. У приложух только минимальный конфиг для доступа к этому самому MongoDB

Dmitriy
14.07.2017
13:26:21
Google
Dmitriy
14.07.2017
13:31:36
А как можно избежать такой вот простыни связывания контролов с объектом настроек http://pastebin.com/PGcAtysP

Yuri
14.07.2017
13:32:48




Ребята, помогите пожалуйста) Пытаюсь взять рандомную Gallery типа IEnumerable<GalleryItem> которая в свою очередь содержит елементы 2 типов (IGalleryImage или IGalleryAlbum). Проблема: немогу пройтись по модели( @foreach ) из-за строгой типизации представления, можете помочь как правильно и лучше перенести IGalleryImage/ IGalleryAlbum по отдельности в частичные представления, не смотря на то что галерея IEnumerable (ее же изменять нелльзя?)

Кто-то может помочь, guys))

Му
14.07.2017
13:37:10
проверяй что GaleryItem нужного тебе интерфейса и клади в нужную колекцию

Yuri
14.07.2017
13:38:02
Можешь подсказать как

Через linq?

Admin
ERROR: S client not available

Му
14.07.2017
13:39:13
collection.OfType<IGalleryImage?)

Elnas
14.07.2017
13:40:12
а получится добавить через .where(t => t.GetType() == нужный тип) ?

или он тоже заплачет из за типизации?

Yuri
14.07.2017
13:40:39
Пробовал

Плакал

И я и компилятор

Vova
14.07.2017
13:41:40
typeof() ?

Elnas
14.07.2017
13:42:45
ааа

офтайп внутри все в object преобразует, бежит по object и проверяет какой это тип

Му
14.07.2017
13:43:54
с where можно collection.Where(t => t is IGalleryImage)

Роман
14.07.2017
13:45:16
хотелось без своего огорода...
это нормальная практика https://msdn.microsoft.com/ru-ru/library/jj155756(v=vs.110).aspx

Google
Роман
14.07.2017
13:45:51
у нас так чуваки делали загрузку многих тысяч мелких файлов, ставили лимит в 50 тасков

Му
14.07.2017
13:48:27
хотелось без своего огорода...
я делаю так public static class CollectionsExtentions { public static async Task<IList<TResult» SelectAsync<TSource, TResult?this IEnumerable<TSource> source, Func<TSource, Task<TResult» selector, int maxDegreesOfParallelism = 4) { var results = new List<TResult?); var activeTasks = new HashSet<Task<TResult»(); foreach (var item in source) { activeTasks.Add(selector(item)); if (activeTasks.Count >= maxDegreesOfParallelism) { var completed = await Task.WhenAny(activeTasks); activeTasks.Remove(completed); results.Add(completed.Result); } } results.AddRange(await Task.WhenAll(activeTasks)); return results; } }

Yuri
14.07.2017
13:53:21
Му
14.07.2017
13:53:33
узнай, это же просто

Анатолий
14.07.2017
13:53:47
Это imgur api, честно я не знаю
надо найти, от какого они интерфейса наследуются и использовать его

Му
14.07.2017
13:54:01
да и из скрина это видно

IGalleryItem

и не наследуются от интерфейса, а имплементируют его

Анатолий
14.07.2017
13:54:50
мне можно, у меня был 26-часовой рабочий день вчера

Му
14.07.2017
13:55:08
:) а я вчера перед сном решил запустить Prey на полчасика

очнулся в 4 утра

Yuri
14.07.2017
13:55:47
Ребята, а если IEnumerable то я не могу where применять?

Му
14.07.2017
13:55:57
можешь

напиши using System.Linq в начале

Ilya
14.07.2017
13:56:13
разреши ему

Му
14.07.2017
13:56:38
разреши ему
сначала надо пройти обряд посвящения

Ilya
14.07.2017
13:56:47

Страница 1483 из 1888

Эта группа больше не существует Эта группа больше не существует