编程时空转换
如题:如果对于计算机而言所有的资源都是有限的,那唯一无限的也许就是时间吧。可是加入规定,在一秒钟我就要完成某件事情呢?
CPU,有单核,多核。现今的生产工艺已经很大程度上把计算机制造业水平提高到当人们一个新的预想是在前一天的时候,后天的实现就成指数级别的变为现实和升级了。
但是今天对于我们,程序员,计算机来说,我们的资源任然是有限的。不管明天什么样子,我们只能用我们的方式编写出明天。我们有时间,但是我们的时间也很有限。
内存,升级的节奏几乎每年级数提升。但是,给我们的无非也就是那么多,不管你是4G还是1024G。在某些场景下任然是有限的。
硬盘,网络,带宽,这些统统都是有参数指标的,也就意味着是有限的。
作为程序员的我们,在考虑这些有限资源的时候,我们该怎么做呢?我的思想,我想借用军事上的一个重要思想,时间换取空间,空间换取时间。时空相互转换。
CPU很多,内存足够,我们编写多线程,把空间进行最大化利用,把处理时间尽量缩短。当只有单核,很少的内存,我把多个任务分成很多子任务,一个一个处理,规定好前后处理的输入输出,每个环节,环环相扣,缓缓执行,直到最终处理好同一个任务。算然空间有限,我们利用时间来延续了不足的空间,重复利用了空间。
突然有种想读毛主席,军事思想书籍的冲动。今天就写到这吧。
其实应该写几个代码的例子的,得做饭去了。