当输入太大时,运行外部脚本会卡住

当输入太大时,运行外部脚本会卡住

我正在使用\input{|perl script.pl}命令运行外部 perl 脚本。我已启用选项-enable-pipes-enable-write18。这几年运行良好,但最近停止工作。使用 pdflatex 构建时,构建卡在 0% CPU 使用率,任务管理器中的 perl 进程也卡在 0% CPU 使用率。这是在更新我的 MiKTeX 安装后发生的,但我也有一段时间没有使用 TeX 了,所以我不完全确定这是否是由更新引起的。

我试验了该脚本,因为“小”的 perl 脚本仍然有效。当脚本的输入超过 ~4KB 时,就会出现问题。是否有可以增加缓冲区大小以使其正常工作的选项?

最小示例:

输入测试.tex

\documentclass{article}
\begin{document}
\input{|perl test.pl}
\end{document}

测试程序

my @i = (1..257); # 1..256 works
for (@i){
    print("0123456789ABCDEF");
}

使用的 MiKTeX 版本:

MiKTeX-pdfTeX 4.0.1 (MiKTeX 20.10)
© 1982 D. E. Knuth, © 1996-2020 Hàn Thế Thành
TeX is a trademark of the American Mathematical Society.
using bzip2 version 1.0.6, 6-Sept-2010
compiled with curl version 7.61.1; using libcurl/7.61.1 WinSSL
compiled with expat version 2.2.6; using expat_2.2.6
compiled with jpeg version 9.3
compiled with liblzma version 50020042; using 50020042
compiled with libpng version 1.6.37; using 1.6.37
compiled with libressl version LibreSSL 2.8.2; using LibreSSL 2.8.2
compiled with MiKTeX Application Framework version 4.0; using 4.0
compiled with MiKTeX Core version 4.1; using 4.1
compiled with MiKTeX Archive Extractor version 4.0; using 4.0
compiled with MiKTeX Package Manager version 4.0; using 4.0
compiled with poppler version 0.60.1
compiled with uriparser version 0.9.2
compiled with zlib version 1.2.11; using 1.2.11

相关内容