第36章 不鸣则已,一鸣惊人!(4/4)
输入代码还是在胡乱表演。
他看了一会儿,越看越看震惊。
因为他看懂了魏东在写什么。
这根本不是修补,而是在重构。
魏东没有试图在原来的框架上打补丁,而是直接推翻了这个研究生写了半个月的架构,重新设计了一套基于乐观锁机制的索引同步协议。
在2000年,乐观锁的概念只在国外几篇顶级论文里出现过,国内学界还停留在传统的悲观锁思维里。
但魏东写出来的是实实在在的代码。
他先重新定义了索引节点的数据结构,然后加入了一个版本号标记,在并发写入时,不再粗暴地加锁阻塞,而是让每个线程先假设自己能成功写入,提交时再检查版本号是否冲突。
如果冲突,就自动回滚重试。
如果不冲突,就一次性提交。
更可怕的是,他还顺手写了一个内存池管理模块,把原来那种频繁的操作改成了预分配的块内存复用,直接解决了内存泄露的问题。
“你……”唐国栋完全看呆了。
很快,光标就滑到了测试程序的部分。
魏东先写了一个简单的压力测试脚本,模拟三十个并发线程同时写入。
然后,他直接运行了测试程序。
伴随着DOS窗口弹出来,一行行代码像是瀑布一样倾泻而下,速度快得让人目不暇接。
在唐国栋震惊的目光中,压力测试足足跑了十几分钟。
本该崩溃的内存占用曲线,此时稳如老狗。
站在门口的唐棠虽然看不懂屏幕上那些代码,但她看得懂爷爷的表情。
那是一种她从未在爷爷脸上见过的神情。
震惊?困惑?狂喜?
连她都有些分辨不清了。
“你,你这个乐观锁的思路……”唐国栋愣神了半晌,才颤声问道:“是从哪里学的?”