Foxtable(狐表)用户栏目专家坐堂 → 大家有没有这样的情况···


  共有13057人关注过本帖树形打印复制链接

主题:大家有没有这样的情况···

帅哥哟,离线,有人找我吗?
mr725
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
大家有没有这样的情况···  发帖心情 Post By:2010/11/25 22:17:00 [只看该作者]

当狐表最小化后,你操作其他程序,十几分钟后半小时后再点击最小化的狐表(也就是最大化),反应特慢··· 要数秒钟才能使其最大化。 不知道大家有没有这种感觉,难道是我的配置太低了~~~

 回到顶部
帅哥哟,离线,有人找我吗?
czy
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33945 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2010/11/25 23:09:00 [只看该作者]

没碰到过。

 回到顶部
帅哥哟,离线,有人找我吗?
程兴刚
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:7235 积分:40574 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2010/11/25 23:35:00 [只看该作者]

正常!

        在microsoft.NET开发环境中编写的代码可分为两类,受控代码和不受控代码,简单地讲,在.NET Framework中编写的受公共语言运行时(CLR)控制的代码称为受控代码,而不受CLR控制的代码称为不受控代码。

        受控代码享有许多由CLR提供的特性,其中包括自动内存管理和无用存储单元收集、跨语言的集成、语言无关性、丰富的异常处理功能、改进的安全性、调试和分析、版本控制以及部署等。在无用存储单元收集器(GC)的帮助下,CLR自动管理对象的生存期,当GC发现一个对象在一定时间内一直未被使用时,CLR将自动释放与此对象相关联的资源,并从内存中将此对象删除,当然也可以通过编程来控制对象的生存期。

        使用microsoft Visual Studio.NET既可以编写受控应用程序,也可以编写不受控应用程序,可以使用Visual C++ 7.0在Visual Studio.NET中编写不受控代码。Managed Extensions to C++(MC++)是编写C++受控代码的方式。使用C#和Visual Basic.NET编写的代码是受控代码。

 

        因此可以看出,狐表的开发编写的代码方式应该是受控代码,当程序一定时间不使用时,CLR自动释放了与其相关联的资源,并从内存中将其删除,当您再次使用(或激活)狐表时,这些被释放资源需要被重新加载,并将其加载到内存,这就相当于与重启狐表“差之毫厘”自然就会出现您的现象,其实大家都存在您的问题,只是电脑的配置差异,有的感觉不会太明显。

 

        上述理由也真实反映了狐表相对于Visual C++ 编写的程序,首次启动较慢(或者说狐表自身启动较慢)的主要原因,所以只要贺老师在优化了狐表的自身设计后,再出现慢可能也是他本人无能为力的了(自从我在GDI+图形程序设计中见到了受控代码和不受控代码的这一段解释后,就一直没有在狐表的启动问题上去一味地找狐表自身原因),其理由就勿用解释了。

        (也许我最后一段的分析不对,请别拍砖!)

[此贴子已经被作者于2010-11-25 23:35:51编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
狐哥
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:719 积分:5181 威望:0 精华:1 注册:2008/9/24 10:41:00
  发帖心情 Post By:2010/11/26 10:06:00 [只看该作者]

程兴刚 何许人也?

我在海边看浪花时,你却钻到海底看浪花生成原理?

厉害,佩服!


 回到顶部
帅哥哟,离线,有人找我吗?
lxl
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:858 积分:6071 威望:0 精华:19 注册:2008/9/1 9:13:00
  发帖心情 Post By:2010/11/26 20:00:00 [只看该作者]

呵呵,我说说我的理解:

 

垃圾回收器(GC)释放的对象是没办法恢复的。他只会释放肯定没用的垃圾数据。

foxtable的有用对象是不会被GC释放的。

GC释放的是没有引用的对象,比如各种事件处理函数内定义的变量、对象。比如打开的窗体,调用了Close方法之后

函数执行完之后,这些变量、对象就成了垃圾。GC会在需要的时候来打扫这些垃圾。

C/C++ 的垃圾对象必须程序员自己释放。

 

楼主这种现象应该是foxtable所占用的内存长时间不使用,被转移到虚拟内存(硬盘上)了,

当你再次点击foxtable的时候,又会把虚拟内存的内容转移到物理内存,物理内存的内容交换到虚拟内存(页交换)

一般只有物理内存不足的时候才会发生这种情况。

 


 回到顶部
帅哥哟,离线,有人找我吗?
baoxyang
  6楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3313 积分:23134 威望:0 精华:1 注册:2009/3/31 11:25:00
  发帖心情 Post By:2010/11/26 22:35:00 [只看该作者]

以下是引用程兴刚在2010-11-25 23:35:00的发言:

正常!

        在microsoft.NET开发环境中编写的代码可分为两类,受控代码和不受控代码,简单地讲,在.NET Framework中编写的受公共语言运行时(CLR)控制的代码称为受控代码,而不受CLR控制的代码称为不受控代码。

        受控代码享有许多由CLR提供的特性,其中包括自动内存管理和无用存储单元收集、跨语言的集成、语言无关性、丰富的异常处理功能、改进的安全性、调试和分析、版本控制以及部署等。在无用存储单元收集器(GC)的帮助下,CLR自动管理对象的生存期,当GC发现一个对象在一定时间内一直未被使用时,CLR将自动释放与此对象相关联的资源,并从内存中将此对象删除,当然也可以通过编程来控制对象的生存期。

        使用microsoft Visual Studio.NET既可以编写受控应用程序,也可以编写不受控应用程序,可以使用Visual C++ 7.0在Visual Studio.NET中编写不受控代码。Managed Extensions to C++(MC++)是编写C++受控代码的方式。使用C#和Visual Basic.NET编写的代码是受控代码。

 

        因此可以看出,狐表的开发编写的代码方式应该是受控代码,当程序一定时间不使用时,CLR自动释放了与其相关联的资源,并从内存中将其删除,当您再次使用(或激活)狐表时,这些被释放资源需要被重新加载,并将其加载到内存,这就相当于与重启狐表“差之毫厘”自然就会出现您的现象,其实大家都存在您的问题,只是电脑的配置差异,有的感觉不会太明显。

 

        上述理由也真实反映了狐表相对于Visual C++ 编写的程序,首次启动较慢(或者说狐表自身启动较慢)的主要原因,所以只要贺老师在优化了狐表的自身设计后,再出现慢可能也是他本人无能为力的了(自从我在GDI+图形程序设计中见到了受控代码和不受控代码的这一段解释后,就一直没有在狐表的启动问题上去一味地找狐表自身原因),其理由就勿用解释了。

        (也许我最后一段的分析不对,请别拍砖!)

[此贴子已经被作者于2010-11-25 23:35:51编辑过]

 不知上述分析正确,但确实狐表运行方面有存在慢的原因,我发布的客户端,大部分用户都说打开项目后,其它操作速度受影响,狐表运行也慢。当然这个配置有关系统,我电脑配置算一般,但也感觉出来慢,只不过销微有点好转。

在这里,有问题想请教下,如果狐表发布的项目在远程访问数据库时,网速慢的时候,是否影响其它系统的操作速度?


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2010/11/27 9:16:00 [只看该作者]

以下是引用baoxyang在2010-11-26 22:35:00的发言:

 不知上述分析正确,但确实狐表运行方面有存在慢的原因,我发布的客户端,大部分用户都说打开项目后,其它操作速度受影响,狐表运行也慢。当然这个配置有关系统,我电脑配置算一般,但也感觉出来慢,只不过销微有点好转。

在这里,有问题想请教下,如果狐表发布的项目在远程访问数据库时,网速慢的时候,是否影响其它系统的操作速度?

 

1、应该是LXL版主的分析正确。

2、易表是个大型软件,对内存要求高,如果机器性能不好,启动后多少对于系统的运行有些影响。

3、网速慢,狐表在加载和保存上耗费的时间更多,自然会影响系统的速度,特别是那些单核cpu的电脑。


 回到顶部
帅哥哟,离线,有人找我吗?
baoxyang
  8楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3313 积分:23134 威望:0 精华:1 注册:2009/3/31 11:25:00
  发帖心情 Post By:2010/11/27 9:33:00 [只看该作者]

以下是引用狐狸爸爸在2010-11-27 9:16:00的发言:

 

1、应该是LXL版主的分析正确。

2、易表是个大型软件,对内存要求高,如果机器性能不好,启动后多少对于系统的运行有些影响。

3、网速慢,狐表在加载和保存上耗费的时间更多,自然会影响系统的速度,特别是那些单核cpu的电脑。

第三种情况,网速慢时,针对部分单核CPU电脑有何建议提高整体运行速度呢?


 回到顶部