→ tw689: stackoverflow 就查東西的網站 06/22 18:26
→ zanyking: 是啊,就是這樣所以我假設大家都知道那是啥才問的... 06/22 18:28
推 y2468101216: 我不理解這個問題 所以這是冷笑話? 06/22 18:34
→ et282523: "堆疊空間不足" OR "StackOverFlow" 網頁打不了!!! 06/22 18:36
→ zanyking: 這不是冷笑話拉,Java真的會丟這個ERROR。 06/22 18:42
推 zelda123: 新人應該不會知道,資深工程師至少要知道是什麼錯誤 06/22 18:46
→ Ekmund: 是叫你查這個網站的錯誤 06/22 18:50
推 hcwang1126: Reclusive function 容易跳這訊息 06/22 19:14
推 hungys: 直覺想到 recursive call 的 call stack overflow,但不確 06/22 19:28
→ hungys: 定是不是噴這個錯誤 0.0 06/22 19:28
推 syclin: 遞迴太深? 06/22 19:32
推 Bencrie: 教遞迴的時候應該多少會提吧。我覺得問這個 ok 06/22 19:43
推 YahooTaiwan: StackTrace 超過限制大小? 06/22 19:58
推 leicheong: 最常見是遞迴太深, 自己call自己但未能觸發離開條件. 06/22 20:07
→ noonOut: 聽起來比默默踩出去還要好一點... 06/22 20:17
推 sing10407: 要有一點經驗才有辦法回答出來 06/22 20:18
推 Bencrie: 是說 Java 的堆疊有可能像 C/C++ 那樣搞到損壞嗎? 06/22 20:22
推 lovdkkkk: 考純 Java 路線的人來說, 對沒經驗的太難, 因為 Java 就 06/22 20:24
→ lovdkkkk: 是不要人去管記憶體, 如果是考 c 也懂的就很一般 06/22 20:25
→ lovdkkkk: 但鑑別度我想是有的, 可找出有認真下功夫學的人 06/22 20:26
推 sing10407: 可以考慮問java的nullPointerException,jounior應該 06/22 20:26
→ sing10407: 有機會遇到 06/22 20:26
→ lovdkkkk: 不過若是口頭問不是筆試, 我第一句也會想回連不到 SF... 06/22 20:27
推 noonOut: 不過我倒是很好奇發生的時候要怎麼處理 06/22 20:40
推 KMTATM: stackoverflow網站掛掉的時候會跳出來 06/22 20:41
→ noonOut: 趕快退堆疊還來得急嗎? 06/22 20:41
→ zanyking: 是啊,NPE是第一個問的,送分用。 06/22 20:42
→ zanyking: 處理方式要看是什麼原因造成,沒給終止條件造成的就補, 06/22 20:44
→ noonOut: 所以 runtime 應該沒救了吧? 06/22 20:45
→ zanyking: 因為tree traversal太深造成的,加大stackSize,或改用 06/22 20:49
→ zanyking: for + stack 來改寫recusion 06/22 20:49
→ zanyking: java 8之後若支援,那就改寫成tail recursion 06/22 20:51
→ zanyking: runtime想救是沒研究過,不過我個人是不會想對Error賭 06/22 20:53
→ zanyking: 人品,因為不知道這個問題是不是也導致jvm上其他thread 06/22 20:54
→ zanyking: 也掛了。如果掛了,還是掛GC thread這種,那救也沒用。 06/22 20:55
→ zanyking: 嗯,剛剛查了一下,應該是還可以救,它似乎不像heap是 06/22 20:58
→ zanyking: 共享的,不過這是jvm 的實作來決定的事了。 06/22 20:58
→ noonOut: 我想像是類似 C 那樣分佈記憶體,踏上 guarding 之類 06/22 21:00
→ noonOut: 不過實際上會搞到 stack 爆掉在 runtime 就可能也沒用 06/22 21:01
→ noonOut: 只是好奇問問看 XD 06/22 21:01
→ zanyking: 所以還有一種解法是切多個thread來解。 06/22 21:02
→ noonOut: 也許 java 真的有什麼 practice 能 handle 這種狀況 06/22 21:02
→ noonOut: 切多 thread 是指把 stack usage 分配到不同 thread 上? 06/22 21:03
→ ringo543: stackoverflow的這篇stackoverflow的解說很恰當 06/22 21:18
推 recorriendo: 對JVM怎麼運作有點了的話都知道這是什麼吧 06/22 21:42
→ cha122977: 忘了哪科教的了 第一次學call stack時有印象 06/22 22:13
推 tomroy: 我有一次是Thread開太多最後開不出來爆炸丟這個給我 06/23 00:09
→ GoalBased: 你工作常遇到這個exception嗎? 不然為啥要問這個 06/23 00:23
推 sedgewick: 是不是和當題目很容易判斷... 06/23 00:41
→ sedgewick: 如果發現題目跟某些履歷表上的資訊高度正相關... 06/23 00:41
→ sedgewick: 這題就不要考... 因為以文中的例子而言, 看年資就好了 06/23 00:42
→ sedgewick: 適不適合... 第一句打錯了. :D 06/23 00:42
→ sedgewick: 通常考題要考的應該是履歷上比較看不出來的... 06/23 00:43
推 Killercat: 其實我覺得要問「為什麼這是Error而非Exception」XD 06/23 07:25
→ Killercat: 這也是一個不錯的問題這樣.... 06/23 07:25
推 beemos: 有笑有推 06/23 08:36
推 robler: 這冷笑話吧XD 06/23 09:11
→ robler: 不過說真的 這個東西很少人會真的碰到吧 06/23 09:13
推 Chikei: 看想要知道啥吧,這題我覺得拿來鑑別是不是稍微懂jvm還算 06/23 10:35
→ Chikei: 不錯 06/23 10:35
→ pennymarkfox: stackoverflow跟outofmemoryexception到底差在哪? 06/23 10:53
推 Killercat: 這其實不難碰到,recursive亂寫,碰到沒cover到的 06/23 10:59
→ Killercat: 判斷回傳,就會炸了 06/23 10:59
推 meowyih: 就回 stackoverflow 的網站出錯了之類的白目答案看看? 06/23 12:28
推 jk47tai: 基本上這問題,問中手才有用,高手要愈到這問題越來越難 06/23 15:43
→ jk47tai: ,新手則是遇不到 06/23 15:43
推 DWR: 只要一個不小心寫了無限迴圈就會遇到了 所以新手也會拉 06/24 12:54