我一直在研究图像加载/缓存系统的许多试验/错误版本。作为 Delphi,我一直对面向对象编程感到满意。但是自从我开始实现一些多线程以来,我一直在想也许这个系统应该在程序的基础上工作。
为什么是因为这些进程将被踢到线程池中,执行图像的脏加载/保存,并释放自己。当我可以只使用过程/函数、记录、事件和图形时,我一直在尝试将这些线程进程包装在对象中。无需将其全部包装在一个类中,当它全部在一个单元内时……对吗?
现在我问的一个主要原因是因为这个系统是在单元的底部初始化的。使用 OmniThreadLibrary (OTL) 时,它已经有自己的初始化线程池,我什至不需要初始化我的线程池。
那么哪种方法更适合这个系统——包裹在一个对象中,或者只是在单元中运行,为什么?多线程的任何示例,而不是在对象内包装任何东西,而是在单元中?