• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >C#教程 > C#解决文件被占用资源,无法删除或修改的方法

C#解决文件被占用资源,无法删除或修改的方法

作者:cg_program 字体:[增加 减小] 来源:互联网 时间:2017-05-28

cg_program 通过本文主要向大家介绍了c#资源文件,c#添加资源文件,c#项目资源文件,c#读取资源文件resx,c#获取资源文件路径等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

private void Print_DetailForm_Shown(object sender, EventArgs e) 
{ 
 
    parameterThread_t = new Thread(new ParameterizedThreadStart(this.openThread_telnet)); 
    //parameterThread_t.IsBackground = false; 
    parameterThread_t.Start(null); 
} 
 
/// <summary> 
/// 线程执行的方法,telnet获取数据 
/// </summary> 
private void openThread_telnet(Object obj) 
{ 
    //TelNet_Manage manage = new TelNet_Manage(); 
    try 
    { 
        manage.PrintBySockets(null, wy_name, table, progressBar1, label2); 
        String localPath = Environment.CurrentDirectory + @"\Ne_data\wy\" + wy_name; 
        if (MessageBox.Show(this,"数据打印完成!\n文件位置:" + localPath + "\n是否进入该目录?", "提示", MessageBoxButtons.YesNo) == DialogResult.Yes) 
        { 
            System.Diagnostics.Process.Start(localPath); 
        } 
        this.Close(); 
        System.Threading.Thread.CurrentThread.Abort();//终止当前线程 
    } 
    catch(Exception e) 
    { 
        MessageBox.Show(this,"打印数据失败!","提示"); 
        System.Threading.Thread.CurrentThread.Abort();//终止当前线程   
        this.Close(); 
    } 
    System.Threading.Thread.CurrentThread.Abort();//终止当前线程   
} 
 
private void button1_Click(object sender, EventArgs e) 
{ 
    //System.Threading.Thread.CurrentThread.Abort();//终止当前线程 
    if (parameterThread_t != null) 
    { 
        parameterThread_t.Interrupt(); 
        parameterThread_t.Abort(); 
        parameterThread_t.Join(); 
         
        GC.Collect(); 
    } 
    this.Close(); 
}</div>

例子:在winform窗口在onshow事件中启动一个线程执行telnet程序。当点击中止按钮(button1_Click)中止线程再继续执行,并且释放当前线程占用的文件资源。

关键:parameterThread_t.Abort();parameterThread_t.Join(); GC.Collect();意思是,把线程Abort()停止线程执行,Join();线程挂起直到线程中止了,然后再GC回收资源。

以上就是C#解决文件被占用资源的全部内容,希望能给大家一个参考,也希望大家多多支持。

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • C#解决文件被占用资源,无法删除或修改的方法

相关文章

  • 2017-05-28C#中字符串的加密的源码
  • 2017-05-28C#中将字符串转换为整型的三种解决方法总结
  • 2017-05-28C#实现判断文件夹存在与否并创建文件夹的方法
  • 2017-05-28C#程序中session的基本设置示例及清除session的方法
  • 2017-05-28C#之IO读写文件方法封装代码
  • 2017-05-28C#中使用DataContractSerializer类实现深拷贝操作示例
  • 2017-05-28C#使用DllImport调用非托管的代码的方法
  • 2017-05-28linq语法基础使用示例
  • 2017-05-28C# Socket的TCP通讯的实例代码
  • 2017-05-28C#单例模式(Singleton Pattern)实例教程

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • C#图片按比例缩放的实现代码
    • C#文件断点续传实现方法
    • C#中参数个数可变的方法实例分析
    • C#泛型与非泛型性能比较的实例
    • C#用递归算法实现:一列数的规则如下: 1、1、2、3、5、8、13、21、34,求第30位数是多少
    • C#入门之窗体的简单用法实例
    • C#完成word文档打印的方法
    • C#关于类的只读只写属性实例分析
    • C#使用foreach语句遍历集合类型的方法
    • c#学习之30分钟学会XAML

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有