vitaly
те код на луа - в шаблонизаторе
vitaly
он по идее потом выполняется как loadstring(code)
Snusmumriken
Карочи, можешь пока запилить что-то типа такого:
local servlist = {
'1',
'2',
'3',
'4',
}
function servlist:getRandom(v)
v = tonumber(v)
if v then v = v % #self + 1 end
v = v or math.random(#self)
return self[v]
end
Snusmumriken
Snusmumriken
И логируй айдишки, мало ли что с ними не то.
vitaly
ну сейчас я просто переписал так
local cdn = {}
cdn[1] = "cdn"
cdn[2] = "c4"
cdn[3] = "c3"
cdn[4] = "c3"
cdn[5] = "c2"
cdn[6] = "c1"
local index = (tonumber(video_id) % 6) + 1
local scdn = cdn[index]
vitaly
посмотрю что получится - айдишки - на сервере с кучей видео это просто случайные целочисленные значения - типа вот таких 24852497
Anonymous
/vzhuh@FailsBot
FailsBot
∧_∧
( ・ω・。)つ━☆・*。
⊂ ノ ・゜+.
しーJ °。+ *´¨)
.· ´¸.·*´¨) ¸.·*¨)
(¸.·´ (¸.·'* ☆
Anonymous
Извините.
Anonymous
Джентльмены, можете ли вы посоветовать литературу по Lua на русском?
vitaly
гугл
vitaly
https://www.lua.org/pil/19.2.html
vitaly
a = {}
for line in io.lines() do
table.insert(a, line)
end
print(table.getn(a)) --> (number of lines read)
vitaly
что можно на русском то читать????
vitaly
в каком контексте будет луа использоваться????
FailsBot
∧_∧
( ・ω・。)つ━☆・*。
⊂ ノ ・゜+.
しーJ °。+ *´¨)
.· ´¸.·*´¨) ¸.·*¨)
(¸.·´ (¸.·'* ☆
Igor
Извините (1)
Anonymous
Фига парень выше дерзкий.
Anonymous
Я на Луа пишу скрипты на лигу легенд и доту.
Anonymous
Хочу знать больше.
Anonymous
Буку из закрепа читаю сейчас, просто хочу ещё забить список литературы наперёд.
Anonymous
So true
vitaly
Кде? Когда?
vvzvlad
отвечает Александр Друзь!
vitaly
Приз в студию!
kazgeek
Это не правильный ответ. Ваше очко уходит в зрительный зал!
vvzvlad
Аааавтомобиль!
Basil
может, дурацкий вопрос, но попробую. допустим, я в отдельном потоке приложения создаю и вызываю lua стейт. в нём я обращаюсь к импортированной функции на c++. а в ней жду cond_value. а теперь вопрос - сработает? или как это нужно делать правильно на lua, если мне нужно усыплять поток с lua, до внешнего события?
Anonymous
То есть я так понял порядок вызовов: lua -> c++ -> cond_wait
Anonymous
Вроде выглядит нормально, но я не знаю имеет ли тут значение потокобезопасность
Anonymous
Если по одному стейту на поток, то можно
Anonymous
А как правильно сделать , я не знаю. Насколько мне известно , в луа нет эвент лупа, чтобы подождать какого-то события
Anonymous
Хотя говорят корутины есть
Basil
да, поток создаёт один стейт, и в нём находится. это правильное решение, или как збэто сделать лучше?
Anonymous
Попробуй пока так
Basil
ну, корутины не знают про внешние потоки. приложение многопоточное, и хочется прикрутить удобный скриптовый движок, для разбора отдельных событий.
Basil
спасибо всем, откликнувшимся, буду думать и пробовать.
Anonymous
А вызывать луа на каждое событие не хочется..
Basil
совершенно не хочется, меня убеждали, что это серьёзная просадка по производительности, я сам не тестил.
Basil
опять же, придётся сохранять и восстанавливать контекст.
Anonymous
Зачем
Anonymous
Делаешь lua_pcall на событие
Anonymous
Нет просадки
Anonymous
Стейт остается
Basil
о, как то я не подумал, что вэцикл можно внести не всё, а только вызоа. спасибо! тогда можно прямо в потоке ждать. так точно проще.
Snusmumriken
Кстате, через эти lua_pcall'ы будут шариться переменные, например:
lib = lib or loadfile('./lib.lua')
print(lib.foo())
При первом вызове, она загрузится, при последующих - будет использоваться уже загруженная.
Snusmumriken
Это может быть плохо (скрипты правим и тут же тестим без перезапуска, а require, например, автоматически кеширует), поэтому стоит очищать package.loaded с "новоподгруженными либами", если требуется отсутствие кеширования.
Basil
угу, учту.
Sergey
Уважаемые а можете кинуть pdf с русской версией PIL ?
Basil
https://www.dropbox.com/s/ga2o7cksytun0qi/Programming%20in%20Lua%20-%20Roberto%20Ierusalimschy.pdf?dl=0
Snusmumriken
И первый же результат гугла:
http://f.aui.su/data/uploads/lua-2015.pdf
Sergey
Snusmumriken
Телега, с проксями на гугло-серверах работает, а гугл - нет? ))
Snusmumriken
Хех
Sergey
А скоро и яндех забанят
Sergey
https://4pda.ru/2018/08/28/353182/
Lucky
давно пора.
Lucky
Одного сайта хватит всем: no.gov
Tverd
Парни, а у кого как у меня под линухом не работает lanes? Lanes из луарокса, luajit 2.1.0~beta3. Есть на примете бодрые аналоги с каналами между тредами?
vitaly
привет
vitaly
добрый день страна
vitaly
есть массив
vitaly
нужно отсортировать значени в зависимости от длины элемента
vitaly
более длиные вперед
vitaly
обычная сортировка по целочисленному полю
vitaly
сижу что то туплю 😀
vitaly
down vote
accepted
Assuming your table is a indexed table and not a keyed one try
test = {'123','1234','1245','1','12'}
table.sort(test, function(a,b) return #a<#b end)
for i,v in ipairs(test) do
print (i,v)
end
vitaly
гугол уже нашел
vitaly
мне 43 года из них 13 я бухал в Праге
vitaly
пиво
vitaly
помойму это норма
vitaly
иногда возьникают тупняки на самых простых задачах
vitaly
я не претендую на звания гения луа
vitaly
мне ехать и похуй как
vitaly
извените меня за мой французский
vitaly
и меня интересует луа - в очень специлированной среде использования - а именно модуль в нгинкс
vitaly
остальной мир луа - меня не интересует
vitaly
мне опять жеж ехать