На прошлой неделе мы сосредоточились на улучшениях и исправлениях ошибок для SmartChain.
Разработка SmartChain — краткая версия
Мы сделали его быстрее и добавили часть API — намного быстрее.
Разработка SmartChain — длинная версия
Некоторые ранние тесты показали, что на старых или более медленных компьютерах с ограниченной мощностью процессора были проблемы с производительностью. Значительное количество времени было потрачено на профилирование ЦП и поиск областей, в которых мы могли бы сэкономить несколько циклов ЦП. К сожалению для нас и к счастью для всех остальных, единственным реальным способом сократить время процессора было пересобрать несколько секций кода. Это включало замену нескольких основных циклов и замену их более сложными функциями, управляемыми событиями. Как всегда, это сломало код примерно в дюжине других мест, и пришлось потратить больше времени на поиск и исправление только что созданных ошибок. В процессе было добавлено несколько дополнительных функций, чья работа заключается в поддержке и перезапуске других фоновых потоков, если по какой-то причине они стали нестабильными или завершились. Почему бы и нет, обработка событий таймеров, которые запускают различные участки кода в заданное время, также была обновлена более чистыми и эффективными обработчиками событий. Этот процесс получился очень долгим и сложным и, вероятно, негативно сказался на местных поставках кофе. Тем не менее, новый код работает как надо, при этом требования к CPU снижены в несколько раз.
В промежутках между биением головами о стены и криками на экраны компьютеров была проделана дополнительная работа по разбору аргументов командной строки и добавлению HTTP JSON API. API позволит третьим сторонам создавать дополнительные интеграции поверх SmartChain для достижения своих целей. После завершения API должен поддерживать все те же функции, которые доступны в графическом интерфейсе.
Разработка SmartChain — скриншоты
До скорого,
— Команда проекта «Радиум»