java的句柄_java获取窗口句柄

java的句柄_java获取窗口句柄Java代码书写过程,文件资源的释放需要特别谨慎的对待.通常文件资源使用后必须close,然后再删除。如果先删除但没有close掉,会造成文件句柄未被释放.这会造成实际使用磁盘空间较大,成为瓶颈importjava.io.File;importjava.io.FileOutputStream;importjava.io.IOException;publicclassFileTest{p…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

Java代码书写过程,文件资源的释放需要特别谨慎的对待.通常文件资源使用后必须close,然后再删除。

如果先删除但没有close掉,会造成文件句柄未被释放.

这会造成实际使用磁盘空间较大,成为瓶颈

import java.io.File;

import java.io.FileOutputStream;

import java.io.IOException;

public class FileTest {

public static void main(String[] args) {

File file = new File(“/home/admin/a.txt”);

// File file = new File(“c://a.txt”);

FileOutputStream out = null;

try {

out = new FileOutputStream(file);

file.delete();

while(true){

try {

Thread.sleep(1000);

} catch (InterruptedException e) {

e.printStackTrace();

}

}

} catch (IOException e) {

e.printStackTrace();

} finally {

try {

if(out!=null) {

out.close();

}

} catch (IOException e) {

e.printStackTrace();

}

}

}

}

此时文件关闭了,但是out还持有文件,out未关闭则文件句柄未被释放。造成实际可使用空间小于可使用空间。

2.文件句柄的调试可用lsof 命令进行查看

lsof -s |grep java

lsof -s |grep deleted

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/180674.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 虚拟化漏洞3种解决方案_怎么实现漏洞复现的

    虚拟化漏洞3种解决方案_怎么实现漏洞复现的利用虚拟机复现漏洞“永恒之蓝”攻击:kaliLinux2020.3靶机:WindowsServer2008R2x64下面详细讲述测试的过程。————“永恒之蓝”简介利用Windows系统的SMB漏洞可以获取系统最高权限。于2017年在全球的范围内大面积爆发,不法分子利用这个漏洞制作了勒索病毒,锁定被攻击的设备,并要求支付高额赎金。“永恒之蓝”的原理主要是扫描所有开放445文件共享端口的Windows机器。这里进行测试要用到一个工具MSF,能快速

    2022年10月16日
    2
  • ReportingServies——SQLServer报表开发综合实例

    ReportingServies——SQLServer报表开发综合实例上一篇:ReportingServies报表开发实例教程如果我们安装了sqlserver2008 R2,将会自动安装一个报表开发工具不要以为此报表开发工具只适合于sqlserver2008,其实在sqlserver2012中也是支持的,事实上我现在项目中就是使用的sqlserver2012。使用此工具进行报表开发,将会十分快速而且方便。这里我通过一个综合实例来演示它的使用技

    2022年10月21日
    2
  • springboot整合tkmybatis以及使用

    springboot整合tkmybatis以及使用经常用 mybatis 的的都知道 使用 mybatisorm 框架存在一个非常不友善的问题就是 就是每操作一个单表就需要自己手写一个 xml 文件 虽然说可以用工具生成 xml 和实体类可以解决这个问题 但是二次开发的时候对某个表字段进行修改的时候 生成 xml 文件就不现实啦 最近发现 tkmybatis 就非常好的解决了这个问题 在这里和大家分享一下 框架配置这里需要引用到的包 mybat

    2025年6月15日
    1
  • C++中list用法详解[通俗易懂]

    C++中list用法详解[通俗易懂]1.关于list容器list是一种序列式容器。list容器完成的功能实际上和数据结构中的双向链表是极其相似的,list中的数据元素是通过链表指针串连成逻辑意义上的线性表,也就是list也具有链表的主要优点,即:在链表的任一位置进行元素的插入、删除操作都是快速的。list的实现大概是这样的:list的每个节点有三个域:前驱元素指针域、数据域和后继元素指针域。前驱元素指针域保存了前驱元素的首地

    2022年7月12日
    28
  • Hash Verification哈希值校验工具[通俗易懂]

    Hash Verification哈希值校验工具[通俗易懂]最后更新:2019-2-26HashVerification最新版:HashVerificationV1.0NEW!版本号:V1.0.0.14973大小:21KB/zip格式压缩,63KB/解压后 MD5校验码 SHA1校验码 2ad54536be68bd7446f82da1bd16b113 74610b4cd2fe675d…

    2022年9月13日
    2
  • Springmvc注解@Resource和@Autowired区别对比

    Springmvc注解@Resource和@Autowired区别对比Springmvc注解@Resource和@Autowired区别对比

    2022年4月24日
    48

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号