Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.117.227.194] |
|
Страницы: (14) « Первая ... 12 13 [14] все ( Перейти к последнему сообщению ) |
Сообщ.
#196
,
|
|
|
Обновилась серия презентаций Dive into SObjectizer-5.5, которая выполняет плавное погружение пользователя в возможности и особенности SObjectizer-а. Теперь все части описывают самую последнюю стабильную версию -- 5.5.15.
Серьезно была переработана самая первая часть, написанная почти год назад. Лишнее украшательство выброшено, примеры чуток упрощены. Вроде бы получилось более-менее неплохо -- основные моменты объяснены и показаны на очень простых примерах. На данный момент в серию входит семь презентаций: Еще парочка (про диспетчеры и mchain-ы), надеюсь, появится в ближайшие две-три недели. |
Сообщ.
#197
,
|
|
|
Сообщ.
#198
,
|
|
|
Создана тема для сбора хотелок для следующей версии SObjectizer: Version 5.5.16 Wish List.
Предположительно, она будет выпущена в марте или в апреле 2016. Сроки выхода зависят от объема и сложности нововведений. А повлиять на этот объем/сложность можно оставив свою хотелку в обсуждении по ссылке или прямо здесь. |
Сообщ.
#199
,
|
|
|
Еще один маленький примерчик: Конкурентный HelloWorld на Go и на C++.
|
Сообщ.
#200
,
|
|
|
Цитата eao197 @ Еще один маленький примерчик: Конкурентный HelloWorld на Go и на C++. кто так пишет? Ничего, что между print("hello ") и println("world!") какой-нибудь другой поток может вставить свой print? package main import "fmt" func main() { sayHello := make(chan string) messages := make(chan string) done := make(chan string) go func() { for i := 0; i < 10; i++ { sayHello <- "Hello" } close(sayHello) }() go func() { for hello := range sayHello { messages <- hello + " World!" } close(messages) }() go func() { i := 0 for msg := range messages { fmt.Println(fmt.Sprintf("%d. %s", i, msg)) i++ } done <- "Done" }() <-done } — http://play.golang.org/p/57HuG9jgt8 |
Сообщ.
#201
,
|
|
|
Цитата korvin @ В данном примере это не страшно, так как никаких других потоков просто нет.Ничего, что между print("hello ") и println("world!") какой-нибудь другой поток может вставить свой print? Другое дело, что использовать каналы всего лишь для синхронизации потоков, пожалуй, слишком расточительно. |
Сообщ.
#202
,
|
|
|
Цитата korvin @ кто так пишет? Ничего, что между print("hello ") и println("world!") какой-нибудь другой поток может вставить свой print? Во-первых, исходный пример не мой. Я его нашел уже в таком вот виде. Моей задачей было показать, как тоже самое можно сделать на C++. Во-вторых, как раз в данном примере никто не должен вставлять свои принты между hello и world. Это типа демонстрация детерминированной передачи управления между рабочими потоками посредством каналов. |
Сообщ.
#203
,
|
|
|
Выпущена версия 5.5.15.2 с поддержкой Android-а (поддержка реализована на основе CrystaX NDK).
|
Сообщ.
#204
,
|
|
|
Цитата eao197 @ Выпущена версия 5.5.15.2 с поддержкой Android-а (поддержка реализована на основе CrystaX NDK). А на стандартном NDK почему не собирается? |
Сообщ.
#205
,
|
|
|
Цитата MyNameIsIgor @ А на стандартном NDK почему не собирается? SO-5 был портирован под Андроид силами команды CrystaX NDK, целью которых является насыщение CrystaX NDK полезным для них софтом. Сам CrystaX NDK появился как следствие недостатков родного NDK из-за которых нормальная разработка под Android на С++ обходится слишком дорого. Подробнее об этом написано на сайте проекта CrystaX NDK. |
Сообщ.
#206
,
|
|
|
Цитата eao197 @ Сам CrystaX NDK появился как следствие недостатков родного NDK из-за которых нормальная разработка под Android на С++ обходится слишком дорого. Подробнее об этом написано на сайте проекта CrystaX NDK. Я как бы в курсе. Но многое, из-за чего изначально появился CrystaX NDK, было исправлено в оригинальном NDK. И вот прямо сейчас нам вовсе не дорого обходится единая кодовая база для Windows/Linux/Mac/Android. CrystaX NDK, насколько мне известно, и сейчас, после всех улучшений оригинального NDK, более продвинутый. Потому я и спрашиваю: что такого вы используете в коде SO, что вам понадобился CrystaX? Вы вообще пробовали собирать SO оригинальным NDK? Цитата eao197 @ SO-5 был портирован под Андроид силами команды CrystaX NDK Что же они там изменяли для портирования? Цитата eao197 @ целью которых является насыщение CrystaX NDK полезным для них софтом Странно как-то... NDK нужен для разработчика. Какие библиотеки им собирать, решать разработчику. Зачем насыщать NDK каким-то софтом? Кому надо, тот соберёт. |
Сообщ.
#207
,
|
|
|
Цитата MyNameIsIgor @ Потому я и спрашиваю: что такого вы используете в коде SO, что вам понадобился CrystaX? Еще раз: это не нам потребовался CrystaX NDK, это разработчики CrystaX NDK заинтересовались портированием SO под Android. И сделали этот порт под свой NDK. Сам SO-5 не использует ничего за пределами стандартной библиотеки C++11. Цитата MyNameIsIgor @ Вы вообще пробовали собирать SO оригинальным NDK. Нет. Основной команде SO-5 надобности в поддержке платформы Android не было до сих пор. Цитата MyNameIsIgor @ Что же они там изменяли для портирования? Были поправлены CMake-овские проектные файлы под особенности кросс-платформенной сборки. Так же были увеличены тайм-ауты в ряде юнит-тестов, чтобы тестовые сценарии успевали отрабатывать на слабых процессорах и на эмуляторах. В самом SO-5 ничего не исправлялось. Цитата MyNameIsIgor @ Странно как-то... NDK нужен для разработчика. Разработчики CrystaX NDK решают свою задачи. Как я понимаю, им нужно простота разработки под Android, поэтому они и сделали свой NDK и на основе этого NDK портировали на Android тот же Boost. Потому что им нужен Boost. Может им и SO-5 для чего-то понадобился. Вот они и его решили портировать. Заодно реализовав поддержку CMake в своем NDK. |
Сообщ.
#208
,
|
|
|
Цитата eao197 @ Еще раз: это не нам потребовался CrystaX NDK, это разработчики CrystaX NDK заинтересовались портированием SO под Android Ok |
Сообщ.
#209
,
|
|
|
Мы провели сравнение производительности SO-5.5.15 и CAF-0.14.4. Вкратце результаты такие: операции создания/удаления агентов в SO-5 медленнее, отсылка и доставка сообщений в SO-5 быстрее.
Плюс объяснение, почему в SO-5 создание/удаление агентов обходится дороже, чем в других инструментах. |
Сообщ.
#210
,
Сообщение отклонено: Qraizer -
|