摘要:
以后路径相关的处理, 用 IOUtils.TPath 就很方便了.//较常用的方法:TPath.GetTempPath; {获取临时文件夹路径}TPath.GetTempFileName; {获取一个临时文件名}TPath.GetPathRoot(); {提取盘符, 如: c:\}TPath.GetDirectoryName(); {提取路径}TPath.GetFileName(); {提取文件名}TPath.GetExtension(); {提取扩展名}TPath.GetFileNameWithoutExtension(); {提取无扩展名的文件名}TPath.ChangeExtension 阅读全文
摘要:
delphi多线程2009-10-29 23:081-1 多线程的基本概念多线程带来如下好处:(自己阅读)1)避免瓶颈;2)并行操作;3)提高效率;在多线程中,通过优先级管理,可以使重要的程序优先操作,提高了任务管理的灵活性。另一方面,在多CPU 系统中,可以把不同的线程在不同的CPU 中执行,真正做到同时处理多任务(Win 98 只是模拟的,而Win/NT/2000是真正的多CPU同时操作)。多线程的两个概念:1)进程:也称任务,程序载入内存,并分配资源,称为“一个进程”。注意:进程本身并不一定要正在执行。进程由以下几部分组成:a>一个私有的地址空间,它是进程可以使用的一组虚拟内存地址 阅读全文
摘要:
总结了一些经验,现贴出于大家讨论。1、构件的使用 开始我一直使用Indy,但最近在开发一个100-350并发用户的服务器端时发现了Indy问题,由于用户的访问非常繁重,服务器工作两周后出现了70多的废连接。导致服务器响应变的慢。而且我观察到有时INDY能自动释放这些废连接,有时多到200多都不释放。后来我改DXSock 3.0构件,代码没有作任何改动,服务从6月1日到今天没有重启一次而且没有一个废连接, 我花了一周看DXSock的代码,改了些错误,也学习了很多,DXSock构成思想很好。它的连接响应线程不是动态创建的,而是你设置多少就一次性创建多少。节省了创建、释放的大量时间。 所以再开发服务 阅读全文