Dear devs, This was asked on TeX.SX: https://tex.stackexchange.com/questions/404617 The example below runs perfectly fine in the normal Lua interpreter, but crashes in texlua because the maximum number of open file handles is exceeded. This seems to be a peculiarity of io.lines in texlua. Is there anything special to the implementation of it in LuaTeX? Cheers, Henri -- Create the file (once) local filename = 'luatexfilelimit.txt' local file = io.open(filename, "w") file:write("hello world\n") file:close() -- Print its contents (many times) for i = 1, 3000000 do print(string.format('Attempt %d', i)) for line in io.lines(filename) do print(line) end end
On 12/5/2017 10:47 PM, Henri wrote:
Dear devs,
This was asked on TeX.SX: https://tex.stackexchange.com/questions/404617 The example below runs perfectly fine in the normal Lua interpreter, but crashes in texlua because the maximum number of open file handles is exceeded. This seems to be a peculiarity of io.lines in texlua. Is there anything special to the implementation of it in LuaTeX? yes: it's wrapped in code that does some checking wrr to what is permitted
no: lua should collect the open handles but in your example there has not been a reason for collecting (hardly a memory demand) i'll see if i can hack a solution Hans ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl -----------------------------------------------------------------
participants (2)
-
Hans Hagen
-
Henri