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

Подскажите пж, для lua5.1. Много ли ресурсов будет отъедать обращение к

элементам таблицы типа
{ Input1 = “Output1”,
Input2 = “Output2”,
и так далее}
Или будет производительнее парсить входящие строки «на лету»?
Процессор слабенький 😅

4 ответов

16 просмотров

Не особо. Если хочешь адового ускорения (нет) — закешируй значения а ля local input1 = conf.input1 local input2 = conf.input2 function foo(data) return spi.receive(data, input1) end При изменениях в твоей табличке, полагаю, а ля conf = { Input1 = “Output1”, Input2 = “Output2”, ...}, кеш придётся обновлять, так что оно хорошо работает если ничего не меняется.

A-G Автор вопроса
Snusmumriken
Не особо. Если хочешь адового ускорения (нет) — за...

Спасибо! Ничего меняться не будет, оно типа константа ))

идексация занимает от O(1) до O(log(n)) (хеш таблица). "сравнение строк" коротких посимвольно производится только при их создании(там не только сравнение, но не суть). короткие строки (меньше 255 символов) сравниваются по указателю, так что это весьма быстро (так как строки, как уже подметили выше, константны и уникальны на весь стейт.) Если хочешь ещё быстрее - юзай luajit, (если он есть под твою платформу) индексация часто используемых таблиц там будет закеширована, как и в целом будет компиляция в нативный код на лету.

A-G Автор вопроса
UtoECat
идексация занимает от O(1) до O(log(n)) (хеш табли...

Да, строки короткие, до 100 символов примерно. А так - только 5.1 и спецбиблиотеки. В основном это шлюз будет. Один телнет открыл, 10 процентов съело )) Вот и приходится о производительности беспокоиться.

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта