На прошлой неделе мы сосредоточились на улучшениях и исправлениях ошибок для SmartChain.

Разработка SmartChain — краткая версия

Мы сделали его быстрее и добавили часть API — намного быстрее.

Разработка SmartChain — длинная версия

Некоторые ранние тесты показали, что на старых или более медленных компьютерах с ограниченной мощностью процессора были проблемы с производительностью. Значительное количество времени было потрачено на профилирование ЦП и поиск областей, в которых мы могли бы сэкономить несколько циклов ЦП. К сожалению для нас и к счастью для всех остальных, единственным реальным способом сократить время процессора было пересобрать несколько секций кода. Это включало замену нескольких основных циклов и замену их более сложными функциями, управляемыми событиями. Как всегда, это сломало код примерно в дюжине других мест, и пришлось потратить больше времени на поиск и исправление только что созданных ошибок. В процессе было добавлено несколько дополнительных функций, чья работа заключается в поддержке и перезапуске других фоновых потоков, если по какой-то причине они стали нестабильными или завершились. Почему бы и нет, обработка событий таймеров, которые запускают различные участки кода в заданное время, также была обновлена ​​более чистыми и эффективными обработчиками событий. Этот процесс получился очень долгим и сложным и, вероятно, негативно сказался на местных поставках кофе. Тем не менее, новый код работает как надо, при этом требования к CPU снижены в несколько раз.

В промежутках между биением головами о стены и криками на экраны компьютеров была проделана дополнительная работа по разбору аргументов командной строки и добавлению HTTP JSON API. API позволит третьим сторонам создавать дополнительные интеграции поверх SmartChain для достижения своих целей. После завершения API должен поддерживать все те же функции, которые доступны в графическом интерфейсе.

Разработка SmartChain — скриншоты

До скорого,

— Команда проекта «Радиум»