最近面了不少公司,职位测试开发。深感每家公司的侧重点不同。
某电商问题:实际场景,类似与双 11 的抢购,只剩最后几件货了,n 个人同时抢,如果这里多线程并发没处理好,会造成有人抢购成功,结果实际是没有货的。问,你了解的如果处理这种情况,及最优方式。
我一听,这就是多线程并发的处理。说了有 synchronized 方式,对在取总数的地方加上 synchronized。还有就是 lock 方式,加锁处理。问还有哪些方式,我就说了下一般都是互斥,临界量,实际其他方式不清楚。人家听了都不满意,说 lock 效率太差,体验性不好。还有么?我也憋了半天来个,设置总数 volatile,其实自己也知道,在这种情况下,volatile 是不行的,达不到数目同步的情况。可是真的不知道了呀!最优方式?听口气,对我回答的不满意。这个最佳方式是啥呢?
还有一个,简单描述下数据库索性的理解?
~不懂,只知道些 SQL 语句的用法。
然后,我们又针对项目自动化情况聊了聊,结束了面试。然后就没有然后了。