程序員們都知道,任務(wù)切換需要耗費(fèi)許多額外的花銷,通俗地講,首先需要保存當(dāng)前上下文,以便下次能夠順利切換回來,然后要加載目標(biāo)任務(wù)的上下文。如果一個(gè)系統(tǒng)不停地在多個(gè)任務(wù)之間來回倒騰,就會(huì)耗費(fèi)大量的時(shí)間在上下文切換上,無形中浪費(fèi)了很多時(shí)間。
相比之下,如果只做一件任務(wù),就不會(huì)有此損失。這就是為什么專注的人比不專注的人在時(shí)間利用效率上高得多的原因。任務(wù)切換的暗時(shí)間看似非常不明顯,甚至很多人認(rèn)為“多任務(wù)”是件很好的事情(有時(shí)候的確是),但日積月累起來就會(huì)發(fā)現(xiàn),消耗在切換上的時(shí)間越來越多。
另外,大腦在開始一件任務(wù)的時(shí)候必須要有一定的時(shí)間來“熱身”,這個(gè)時(shí)間因人而異,并且可以通過練習(xí)來改變。舉個(gè)例子,你看了一會(huì)書之后,忽然感到一陣無聊,忍不住打開瀏覽器,10分鐘后你想起來還要繼續(xù)看書,但要回復(fù)到當(dāng)時(shí)理想的狀態(tài),卻需要一段時(shí)間來努力去集中精力,把記憶中相關(guān)的知識(shí)全都激活起來,從而才能進(jìn)入“狀態(tài)”,因?yàn)槟闵狭?0分鐘網(wǎng)之后這些記憶已經(jīng)被抑制了。如果這個(gè)“熱身”狀態(tài)需要一刻鐘,那么看似10分鐘的上網(wǎng)閑逛其實(shí)就花費(fèi)了25分鐘。
如果閱讀的例子還不夠生動(dòng),對(duì)于程序員來說其實(shí)有更好的例子:你寫程序?qū)懙谜齢igh,忽然被叫去開了一通會(huì),寫到一半的代碼擱在那兒。等你開完會(huì)回來你需要多久才能重新進(jìn)入狀態(tài)?又或者,你正在調(diào)試程序,你已經(jīng)花了20分鐘的時(shí)間把與這個(gè)bug可能相關(guān)的代碼前前后后都理解了一遍,心中構(gòu)建了一個(gè)大致的地圖,就在這時(shí),呃,你又被叫去開了個(gè)會(huì),開完會(huì)回來,可想而知,得花上一些時(shí)間來回想一下剛剛弄清的東西了。
迅速進(jìn)入狀態(tài)的能力是可以鍛煉的,根據(jù)我個(gè)人的經(jīng)驗(yàn),至少可以縮短到3~5分鐘。但要想完全進(jìn)入狀態(tài),卻是很難在這么短的時(shí)間內(nèi)實(shí)現(xiàn)的。所謂完全進(jìn)入狀態(tài),舉個(gè)例子:你看了3個(gè)小時(shí)的書,或者調(diào)試了半個(gè)小時(shí)的程序之后,往往滿腦子都是相關(guān)的東西,所有這些知識(shí)都處在活躍狀態(tài),換言之,你大腦中所有相關(guān)的記憶神經(jīng)網(wǎng)絡(luò)都被激活了,要達(dá)到這樣一種忘記時(shí)間流逝的“沉浸”狀態(tài)(心理學(xué)上叫做“流體驗(yàn)”),不是兩三分鐘的事情。而一旦這種狀態(tài)被破壞,無形間效率就會(huì)大打折扣。這也是為什么我總是傾向于創(chuàng)造大塊的時(shí)間來閱讀重要的東西,因?yàn)檫@樣有利于“沉浸”進(jìn)去,使得新知識(shí)可以和大腦中與其相關(guān)的各種既有的知識(shí)充分融合,關(guān)聯(lián)起來,后者對(duì)于深刻的記憶非常有幫助。
要充分利用暗時(shí)間,不僅要能夠迅速進(jìn)入狀態(tài),另一個(gè)很重要的習(xí)慣就是能夠保持狀態(tài)多久(思維體力)?!禩he Psychology of Invention in the Mathematical Field》②(中譯名《數(shù)學(xué)領(lǐng)域中的發(fā)明心理學(xué)》)上有一段關(guān)于龐加萊的思考習(xí)慣的介紹,很有代表性。龐加萊經(jīng)常在去海邊休假或在路上走的時(shí)候在腦海中思索數(shù)學(xué)問題,很多時(shí)候解答就在這些時(shí)候忽然閃現(xiàn)。雖然我和龐加萊是沒法比的,但是常常也在路上想出答案,這真是一種愉悅的體驗(yàn)。