這一次真的是讓我見識到~~細節到這樣的地步!
國壽這一部份的保障資訊存檔的問題,
執行效能我一直無法解決!
而且深信,程式方面已想不到是什麼原因造成,
沒有什麼可以調整的地方!
一直是想往系統環境方面去看起。
而因為我覺得程式沒有地方可以改。
問題就歸於「取資料」「計算保障」這方面耗了很多時間
要改很難改
因為自已為沒地方可以改,所以也不會用心去思考!
加LOG去看耗時,也是大功能的去看。
這一次George過來看,
他今天是另一邊忙完後過來,來到這就是六點多~
在他還沒來的時間,我大多是由環境的設定下手,
沒有改善後,就沒法子了。
在一旁寫寫自已的程式!
而我也在想,George過來,還能改到什麼地方嗎??
他過來後,在了解現在慢的狀況,
在討論中,
慢慢引出,在執行批次,一開始的速度OK,但到後段後,時間就會變慢~~~
為什麼後段會變慢??
George打算在一個主要的Function 插Log 旗子!
這個我有做Log時間,是一個一個區塊的時間,
但他不要這樣
他要細到「每一行」程式所花的時間!!!
真的當下覺得........這有用嗎!?只是浪費時間而已~~不認為有用。
在這期間,我在他一旁看,意外發現我自已在「取家庭成員資料」的地方竟呼叫2次!
一開始還不相信是我寫的XDDD
比對之後,看來只有我會寫這個地方。只好自已把它給移除!
這個,只能說沒有心要改的話,是永遠不會注意到這個問題了!!
再來George 埋的Log發現了細節問題!
一個我認為幾乎是「聖經」的程式寫法,竟有問題!!
字串的處理,認為用 StringBuild 去做是理所當然!
所以很常這樣寫
StringBuild strBuild = new StringBuild();
而George在這裡前後埋Log,因為這樣,才得以發現這種地方也會出問題!
在批次執行後段,這個 new StringBuild() 竟然要花時間!而且後段有增長的趨勢!!
(註:StringBuild.Clear()也會花時間!!)
因此改成 string strBuild = String.Empty;
用 String.Empty 也算是在我概念下,視為「聖經」等級的程式寫法。
「宣告字串,就要用String.Empty做初始化」!!
這個 竟然要花時間!而且後段有增長的趨勢!!
直到最後改成,string strBuild = "";
這種寫法,才完全不花時間!!
============================================
一開始自已「沒有想要改」的心態,讓自已看不到問題!!
不要鐵齒!
不要認為不可能!!
這一次被自已打了一巴掌!!
以後心態要是:「去解決問題,而非推托造成問題是XXX原因,我沒辦法改!」
加油!!
自滿的話,最後會很慘的!
國壽這一部份的保障資訊存檔的問題,
執行效能我一直無法解決!
而且深信,程式方面已想不到是什麼原因造成,
沒有什麼可以調整的地方!
一直是想往系統環境方面去看起。
而因為我覺得程式沒有地方可以改。
問題就歸於「取資料」「計算保障」這方面耗了很多時間
要改很難改
因為自已為沒地方可以改,所以也不會用心去思考!
加LOG去看耗時,也是大功能的去看。
這一次George過來看,
他今天是另一邊忙完後過來,來到這就是六點多~
在他還沒來的時間,我大多是由環境的設定下手,
沒有改善後,就沒法子了。
在一旁寫寫自已的程式!
而我也在想,George過來,還能改到什麼地方嗎??
他過來後,在了解現在慢的狀況,
在討論中,
慢慢引出,在執行批次,一開始的速度OK,但到後段後,時間就會變慢~~~
為什麼後段會變慢??
George打算在一個主要的Function 插Log 旗子!
這個我有做Log時間,是一個一個區塊的時間,
但他不要這樣
他要細到「每一行」程式所花的時間!!!
真的當下覺得........這有用嗎!?只是浪費時間而已~~不認為有用。
在這期間,我在他一旁看,意外發現我自已在「取家庭成員資料」的地方竟呼叫2次!
一開始還不相信是我寫的XDDD
比對之後,看來只有我會寫這個地方。只好自已把它給移除!
這個,只能說沒有心要改的話,是永遠不會注意到這個問題了!!
再來George 埋的Log發現了細節問題!
一個我認為幾乎是「聖經」的程式寫法,竟有問題!!
字串的處理,認為用 StringBuild 去做是理所當然!
所以很常這樣寫
StringBuild strBuild = new StringBuild();
而George在這裡前後埋Log,因為這樣,才得以發現這種地方也會出問題!
在批次執行後段,這個 new StringBuild() 竟然要花時間!而且後段有增長的趨勢!!
(註:StringBuild.Clear()也會花時間!!)
因此改成 string strBuild = String.Empty;
用 String.Empty 也算是在我概念下,視為「聖經」等級的程式寫法。
「宣告字串,就要用String.Empty做初始化」!!
這個 竟然要花時間!而且後段有增長的趨勢!!
直到最後改成,string strBuild = "";
這種寫法,才完全不花時間!!
============================================
一開始自已「沒有想要改」的心態,讓自已看不到問題!!
不要鐵齒!
不要認為不可能!!
這一次被自已打了一巴掌!!
以後心態要是:「去解決問題,而非推托造成問題是XXX原因,我沒辦法改!」
加油!!
自滿的話,最後會很慘的!
0 意見 :
張貼留言