2008年2月14日 星期四

年紀大,才明瞭

隨著年紀的增加,漸漸可以明瞭為什麼人總坐在電腦前面,翻閱著相本照片、看著別人出遊,原來自己已被現實社會給綑綁住。

前陣子跟國中同學聯絡,發現他在美國過的生活似乎苦悶?!是種族是經濟,但最後我發現,其實也有非常多快樂的回憶,只是隨著年紀,漸漸在部落格上著落的,都是比較悲苦的印象,除此之外,寒假跟國小同學閒逛,才發現原來每年都有舉辦國小同學會,這個東西,第一的印象是國小五年級,有印象三、四年級的同學也曾在我五、六年級時舉辦過,但我沒參加,這次輾轉得到聚會的照片,看到老師那張臉,儘管頭髮白了不少,但那個表情依舊專屬於他!很深刻的回憶。

最近的自己也有點悶,唸了研究所,雖然畢業感覺不成問題,但我還是不斷地自己要求,總覺得沒做出什麼東西,就是非常浪費時間,因為自己已延畢一年。

我想,這陣子開始規劃點東西,讓生活達點平衡,順便記錄過去的點滴。

2008年1月29日 星期二

悶悶的氣氛

最近的心情有點悶悶的。

似乎是期末時候忙得不可開交,現在悠閒起來,看了一齣韓劇「咖啡王子1號店」,看完後反而自省著自己的生活,似乎沒有真的很有朝氣地去完成一件事!大概是這個關係,開始悶悶的。

真是奇怪的心情啊,但說真的,我還滿喜歡這部戲,雖然一開始只是很好奇,在想咖啡的戲是如何蔓延,看到最後才知道是男女三角的故事,但我還是很欣賞劇中的恩燦,那麼有活力、自然。

希望自己也能夠如此地面對生活

2008年1月23日 星期三

錄音程式 Audacity

    http://audacity.sourceforge.net/

    The Free, Cross-Platform Sound Editor

    Audacity is free, open source software for recording and editing sounds.
    It is available for Mac OS X, Microsoft Windows, GNU/Linux, and other
    operating systems. Learn more about Audacity... Also check our Wiki and
    Forum for more information.

    The latest release of Audacity is 1.3.4 (beta). Because it is a work in
    progress and does not yet come with complete documentation or translations
    into foreign languages, it is recommended for more advanced users. See New
    Features in 1.3 for more information about the 1.3.x beta series.

    For all users, Audacity 1.2.6 is a stable release, complete and fully
    documented. You can have both Audacity 1.2.6 and 1.3.3 installed
    simultaneously.
--
    可下載相關 dll 檔  即可匯出成 mp3 啦

2008年1月16日 星期三

[C#] 跨執行緒作業無效: 存取控制項 'xxx' 時所使用的執行緒與建立控制項的執行緒不同

    .NET 2005 的 Thread 比較嚴格  不能隨意存取其他 Thread 的資料
    看網路上找到的資料聽說 .NET 2003 是 ok 的


      其錯誤訊息:


        跨執行緒作業無效: 存取控制項 'xxx' 時所使用的執行緒與建立
        控制項的執行緒不同。


    至於用來解決的方式有  BackgroundWorker  等相關技術
    但由於我的目的是要變動 winform 裡頭的東西  不太ok
    最後摸到一個方法:


        http://www.purecs.net/thread/topic736_1.aspx


    簡敘:

        Step 1:


          在 form 中請多添加以下這個 member
          private delegate void InvokeUpdateState(string state); // 依需求


        Step 2:


          要透過 Thread 做動作的東西
          如 event handler 會 call 到的那支 function
          對那支 function 做一些調整


          ex:


          private void show( string k ){
             if( this.form元件.InvokeRequired ){
               this.Invoke(
                 new InvokeUpdateState(this.show) , new object[]{k}
               );
             }else{  // 原先寫好動作的部分


             }
          }
          這樣就沒啥問題了


2008年1月7日 星期一

六招 gdb

    我到現在還只會用 printf  真弱啊  XD  但這招陪伴我解決了大大小小的作業
    雖然 OS 作業有做過 gdb kernel  但其實我不太會去改 kernel  就又忘光了
    今天看 Kudo 稍微操作  還不賴
    亦回想起嵌入式課程的介紹  有些呼應  越來越懂 gdb 的精神了

    記一些簡單的指令就夠用一輩子了

        1.# gcc -g test.c   這應該是加入 debug 資訊
        2.# gdb a.out       出錯時就可以用了
        3.(gdb) run         就給它 run 到出錯處
        4.(gdb) br linenum  就是設中斷點
        5.(gdb) display xx  顯示 xx 變數之值
        6.(gdb) n           往下執行

    這六招就很夠用了哩!!
    以前都沒用過 -g   而修課時又很恍神  今天看大神用才終於融會貫通啊
    簡單地說  就是先按 run 會跑到出錯的地方  因為有 debug 資訊
    所以會顯示在第幾行出錯  此時就可以設中斷點  除此之外還可以設定要顯示的變數
    接下來再 run 一次  就是重跑囉  就會停在中斷點  就可以看到資訊啦