Linux 'screen' 不会从磁盘读取
Linux 'screen' will not read from disk
我运行一个简单的多线程producer/consumer框架在Java做一些处理。该框架从一些文件中读取,处理数据,并将一些结果写回磁盘。
我的问题如下:由于处理过程中(非常)高的内存占用,所有处理必须按以下方式分批完成:
1 - 启动框架
2 - 进行处理
3 - 关闭框架
都在 shell 脚本中。为此,我打开一个屏幕,以便即使我不在时也可以继续处理,然后启动 shell 脚本。然而,我的经验是,如果我断开屏幕(CTRL-A + D),框架会抱怨它突然找不到 java 字节编译的 classes框架。如果我不断开屏幕,这个问题就会完全消失。
这真令人沮丧,我不明白为什么。我已经多次重新安装屏幕(基于 Debian 的系统),当我将 code/data 移动到它们并在那里处理时,我可以访问不存在此问题的其他服务器。不幸的是,这些服务器(技术上)是禁止访问的,所以我可以在那里进行完整的处理。
关于如何进行的任何建议?
** 更新**
这是我断开屏幕后的一些输出:
/edu/process/TOB.java:3: warning: PNGImageReaderSpi is internal
proprietary API and may be removed in a future release
import com.sun.imageio.plugins.png.PNGImageReaderSpi;
^
/edu/process/LPR.java:125: warning: [unchecked] unchecked conversion
Dist<Double> d = new Dist("");
^
required: Dist<Double>
found: Dist
2 warnings
Error: Could not find or load main class edu.process.DService
警告等都没有问题,我已经彻底检查过它们不会干扰处理。这是错误。这是运行所有内容的主要 class,在我断开屏幕后,它只是说它不再存在。
重新安装后问题解决
我运行一个简单的多线程producer/consumer框架在Java做一些处理。该框架从一些文件中读取,处理数据,并将一些结果写回磁盘。
我的问题如下:由于处理过程中(非常)高的内存占用,所有处理必须按以下方式分批完成:
1 - 启动框架
2 - 进行处理
3 - 关闭框架
都在 shell 脚本中。为此,我打开一个屏幕,以便即使我不在时也可以继续处理,然后启动 shell 脚本。然而,我的经验是,如果我断开屏幕(CTRL-A + D),框架会抱怨它突然找不到 java 字节编译的 classes框架。如果我不断开屏幕,这个问题就会完全消失。
这真令人沮丧,我不明白为什么。我已经多次重新安装屏幕(基于 Debian 的系统),当我将 code/data 移动到它们并在那里处理时,我可以访问不存在此问题的其他服务器。不幸的是,这些服务器(技术上)是禁止访问的,所以我可以在那里进行完整的处理。
关于如何进行的任何建议?
** 更新**
这是我断开屏幕后的一些输出:
/edu/process/TOB.java:3: warning: PNGImageReaderSpi is internal
proprietary API and may be removed in a future release
import com.sun.imageio.plugins.png.PNGImageReaderSpi;
^
/edu/process/LPR.java:125: warning: [unchecked] unchecked conversion
Dist<Double> d = new Dist("");
^
required: Dist<Double>
found: Dist
2 warnings
Error: Could not find or load main class edu.process.DService
警告等都没有问题,我已经彻底检查过它们不会干扰处理。这是错误。这是运行所有内容的主要 class,在我断开屏幕后,它只是说它不再存在。
重新安装后问题解决