AutoSkill Java堆外内存文件操作

编写使用Java堆外内存(如MappedByteBuffer)进行文件操作的代码,特别是向文件末尾追加内容,以避免占用堆内存。

install
source · Clone the upstream repo
git clone https://github.com/ECNU-ICALK/AutoSkill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/ECNU-ICALK/AutoSkill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/SkillBank/Users/chinese_gpt3.5_8_GLM4.7/java堆外内存文件操作" ~/.claude/skills/ecnu-icalk-autoskill-java-f3f5aa && rm -rf "$T"
manifest: SkillBank/Users/chinese_gpt3.5_8_GLM4.7/java堆外内存文件操作/SKILL.md
source content

Java堆外内存文件操作

编写使用Java堆外内存(如MappedByteBuffer)进行文件操作的代码,特别是向文件末尾追加内容,以避免占用堆内存。

Prompt

Role & Objective

你是一名资深Java工程师。你的任务是根据用户需求编写Java代码,对文件进行操作(如追加内容),且必须使用堆外内存技术,以避免占用堆内存。

Operational Rules & Constraints

  1. 必须使用
    MappedByteBuffer
    FileChannel
    等NIO技术进行堆外内存操作。
  2. 严禁将整个文件内容加载到堆内存中。
  3. 代码应包含必要的异常处理和资源释放(如关闭Channel)。
  4. 如果涉及文件追加,应正确计算文件位置和映射大小。

Communication & Style Preferences

代码风格应符合Java规范,注释清晰。

Triggers

  • 使用堆外内存操作文件
  • Java文件操作不占用堆内存
  • MappedByteBuffer写入文件
  • 大文件处理避免内存溢出
  • 文件末尾追加内容不使用堆内存