最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java如何強(qiáng)制刪除java程序占用的文件

 更新時(shí)間:2024年06月14日 09:58:10   作者:普通網(wǎng)友  
這篇文章主要介紹了java如何強(qiáng)制刪除java程序占用的文件問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

java強(qiáng)制刪除java程序占用的文件

在JAVA對(duì)文件的讀寫(xiě)操作中,操作完以后將輸入流和輸出流及時(shí)關(guān)閉時(shí)很必要的。

假如我們有時(shí)候忘記關(guān)閉了,又不知道在哪個(gè)地方去關(guān)閉,為了刪除該文件,JAVA可以進(jìn)行強(qiáng)制刪除操作。

可以使用如下代碼進(jìn)行強(qiáng)制刪除:

public boolean forceDelete(File file){
        boolean result=file.delete();
        if (!result) {
            System.gc();    //回收資源
            file.delete();
        }
        return result;
    }

如果一次強(qiáng)制回收不成功,那就搞個(gè)循環(huán),多來(lái)幾次,如下代碼:

public boolean forceDelete(File file) {
        boolean result = file.delete();
        int tryCount = 0;
        while (!result && tryCount++ < 10) {
            System.gc();    //回收資源
            result = file.delete();
        }
        return result;
    }

雖然System.gc()可以這樣強(qiáng)制解除對(duì)文件的占用,但是也不是萬(wàn)能的,因?yàn)椋?/p>

  • ① 及時(shí)關(guān)閉輸入流、輸出流是很有必要的
  • ② System.gc()也不是一定能夠回收垃圾的,能否成功回收取決于JVM的回收機(jī)制,外部人員是無(wú)法掌控的。就像我們?nèi)コ燥埖葧r(shí)間長(zhǎng)了催單,我們只是向餐館提交了我們的申請(qǐng),能不能快點(diǎn)上菜依然取決于廚師
  • ③ 即使不用System.gc()進(jìn)行強(qiáng)制回收,JVM的回收機(jī)制也會(huì)在一段時(shí)間后對(duì)資源進(jìn)行回收
  • ④ 這種方法也只對(duì)被java程序占用的文件有用,對(duì)于被其他進(jìn)行占用的文件就無(wú)能為力了

java強(qiáng)行刪除文件(針對(duì)進(jìn)程正在使用的文件的刪除)

操作無(wú)法完成 因?yàn)槲募言?Java(TM) Platform SE binary 中打開(kāi)。

出現(xiàn)該問(wèn)題的原因是創(chuàng)建的IO流沒(méi)有正常的關(guān)閉,導(dǎo)致資源文件一直被占用!

只要為創(chuàng)建的每一個(gè)IO流加上close方法就能正常使用,而且謹(jǐn)記:先創(chuàng)建的流最后關(guān)閉,且創(chuàng)建關(guān)閉一一對(duì)應(yīng)。  

刪除被進(jìn)程占用的文件,可以先判斷文件是否被刪除,如果沒(méi)有,則讓系統(tǒng)強(qiáng)制回收資源,進(jìn)行文件的刪除

示例如下:

boolean result = f.delete();
  if(!result)
   {
    System.gc();
    f.delete;
   }

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • SpringBoot異步調(diào)用相同類(lèi)的解決方案

    SpringBoot異步調(diào)用相同類(lèi)的解決方案

    在SpringBoot中,同一個(gè)類(lèi)中調(diào)用帶有@Async注解的方法時(shí),異步調(diào)用會(huì)失效,因?yàn)橹苯油ㄟ^(guò)this調(diào)用方法時(shí),并沒(méi)有通過(guò)Spring的代理對(duì)象,下面給大家分享SpringBoot異步調(diào)用相同類(lèi)的解決方案,感興趣的朋友一起看看吧
    2025-02-02
  • springboot配置flyway(入門(mén)級(jí)別教程)

    springboot配置flyway(入門(mén)級(jí)別教程)

    本文介紹了springboot配置flyway,主要介紹基于SpringBoot集成flyway來(lái)管理數(shù)據(jù)庫(kù)的變更,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-09-09
  • HashMap和HashTable底層原理以及常見(jiàn)面試題

    HashMap和HashTable底層原理以及常見(jiàn)面試題

    今天小編就為大家分享一篇關(guān)于HashMap和HashTable底層原理以及常見(jiàn)面試題,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-01-01
  • SpringSecurity在分布式環(huán)境下的使用流程分析

    SpringSecurity在分布式環(huán)境下的使用流程分析

    文章介紹了Spring?Security在分布式環(huán)境下的使用,包括單點(diǎn)登錄(SSO)的概念、流程圖以及JWT(JSON?Web?Token)的生成和校驗(yàn),通過(guò)使用JWT和RSA非對(duì)稱(chēng)加密,可以實(shí)現(xiàn)安全的分布式認(rèn)證,感興趣的朋友一起看看吧
    2025-02-02
  • Spring框架實(shí)現(xiàn)AOP的兩種方式詳解

    Spring框架實(shí)現(xiàn)AOP的兩種方式詳解

    這篇文章主要為大家詳細(xì)介紹了Spring框架實(shí)現(xiàn)AOP的兩種方式,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)有一定的借鑒價(jià)值,需要的可以參考一下
    2022-09-09
  • Java JDK 1.8 lambda的用法詳解

    Java JDK 1.8 lambda的用法詳解

    這篇文章主要介紹了Java JDK 1.8 lambda的用法詳解,文中給大家提到了jdk 1.8 Lambda 表達(dá)式 遍歷數(shù)組的方法,需要的朋友可以參考下
    2019-09-09
  • java中Serializable接口作用詳解

    java中Serializable接口作用詳解

    這篇文章主要為大家詳細(xì)介紹了java中Serializable接口作用,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • IDEA mybatis-generator逆向工程生成代碼

    IDEA mybatis-generator逆向工程生成代碼

    這篇文章主要介紹了IDEA mybatis-generator逆向工程生成代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-06-06
  • spring cloud 阿波羅 apollo 本地開(kāi)發(fā)環(huán)境搭建過(guò)程

    spring cloud 阿波羅 apollo 本地開(kāi)發(fā)環(huán)境搭建過(guò)程

    Apollo(阿波羅)是攜程框架部門(mén)研發(fā)的配置管理平臺(tái),能夠集中化管理應(yīng)用不同環(huán)境、不同集群的配置,配置修改后能夠?qū)崟r(shí)推送到應(yīng)用端,并且具備規(guī)范的權(quán)限、流程治理等特性
    2018-01-01
  • JavaWeb 實(shí)現(xiàn)驗(yàn)證碼功能(demo)

    JavaWeb 實(shí)現(xiàn)驗(yàn)證碼功能(demo)

    在 WEB-APP 中一般應(yīng)用于:登錄、注冊(cè)、買(mǎi)某票、秒殺等場(chǎng)景,大家都接觸過(guò)這個(gè)驗(yàn)證碼操作,今天小編通過(guò)實(shí)例代碼給大家講解javaweb實(shí)現(xiàn)驗(yàn)證碼功能,需要的朋友參考下
    2017-02-02

最新評(píng)論

通河县| 包头市| 平果县| 唐河县| 广饶县| 德令哈市| 青铜峡市| 瑞安市| 儋州市| 临洮县| 大丰市| 江门市| 邵东县| 商洛市| 崇明县| 图们市| 普宁市| 西乌| 察隅县| 吉木乃县| 泽普县| 长宁县| 唐河县| 丰镇市| 巩留县| 房山区| 阿巴嘎旗| 城步| 巴南区| 安远县| 景东| 京山县| 永嘉县| 合水县| 恩施市| 商都县| 陆河县| 定兴县| 郁南县| 临西县| 慈利县|