none
Visual Studio 建立 SQL Server 專案 中 [StoredProcedure].cs 無法使用 Thread ? RRS feed

  • 問題

  • 大家好!

    請問Visual Studio 建立SQL Server 專案 中 建立 「StoredProcedure」的.cs 程式內, 能否使用 Thread ?

    試著將 call SAP RFC 的 .NET 程式 用 CLR 方式, 寫在 SQL Server 專案 中
    因 call SAP RFC 需要宣告用 Thread 方式才能 work!

    原來在 「WEB」 or 「WinForm」 專案中可以執行的 Thread , 

    在 「SQL Server 專案」的 Debug 模式 [逐步執行預存程序] 中 , 發現程式不會跳到 要執行的 「方法

    請問大家有經驗指導一下!Thanks

    程式碼...

    [Microsoft.SqlServer.Server.SqlProcedure]
        public static void spCallSAP_RFC()
        {
            Thread s = new Thread(new ThreadStart(GetVerderInfo));
    
            //Set the run mode 'STA' 
            s.SetApartmentState(ApartmentState.STA);
    
            //傳入參數
            s.Start();
            s.Join();  //<- 在「SQL Server 專案」不會去執行
    

      

       

    大家好 ~ 又是一個快樂的鳥日子^^ 投入在一個永遠無法畢業的行業 -''- 資訊業

    2015年1月29日 下午 12:08

解答

  • 這篇討論為什麼沒有說明Thread在CLR的處理方式是因為回文者說:[強烈不建議在CLR中使用Thread功能], 也許這正是CLR並未支援的原因

    • 已標示為解答 I am JK 2015年2月11日 上午 10:21
    2015年2月4日 上午 06:56

所有回覆


  • 您好,
    請問有使用 UNSAFE 嗎?

    亂馬客blog: http://www.dotblogs.com.tw/rainmaker/

    2015年1月29日 下午 01:34
  • 多緒執行要看場合, 如果效率的瓶頸出現在IO, 例如資料傳輸, 多緒執行可以提升的效率可能會不如預期, 您可以看一下這篇討論的說明:Multi-threaded code in CLR Stored Procs?

    2015年1月30日 上午 08:52

  • 您好,
    請問有使用 UNSAFE 嗎?

    亂馬客blog: http://www.dotblogs.com.tw/rainmaker/


    有用 UNSAFE , 經 Debug 模式偵錯 就是不會執行 Thread  要執行的 「方法

    大家好 ~ 又是一個快樂的鳥日子^^ 投入在一個永遠無法畢業的行業 -''- 資訊業

    2015年2月4日 上午 01:00
  • 多緒執行要看場合, 如果效率的瓶頸出現在IO, 例如資料傳輸, 多緒執行可以提升的效率可能會不如預期, 您可以看一下這篇討論的說明:Multi-threaded code in CLR Stored Procs?


    這是CALL ERP-SAP系統 RFC 的程式 , 需要使用 Thread 呼叫 , 多謝提供連結...這文件有提到一些概念,但沒有說明 Thread 在 CLR 處理方式



    大家好 ~ 又是一個快樂的鳥日子^^ 投入在一個永遠無法畢業的行業 -''- 資訊業

    2015年2月4日 上午 01:08
  • 不能把這段切到外部程式去處理嗎?

    強力監督SQL Injection問題!!

      • 小朱的技術隨手寫:http://www.dotblogs.com.tw/regionbbs/
      • 雲端學堂Facebook: http://www.facebook.com/studyazure

    2015年2月4日 上午 01:08
    版主
  • 這篇討論為什麼沒有說明Thread在CLR的處理方式是因為回文者說:[強烈不建議在CLR中使用Thread功能], 也許這正是CLR並未支援的原因

    • 已標示為解答 I am JK 2015年2月11日 上午 10:21
    2015年2月4日 上午 06:56
  • 因CALL SAP ERP RFC 就一定要用 Thread ,不然無法work >"<

    大家好 ~ 又是一個快樂的鳥日子^^ 投入在一個永遠無法畢業的行業 -''- 資訊業

    2015年2月11日 上午 10:23
  • 那 我宣布放棄....改 procedure call Web Service ==> Call SAP RFC  搞定!!


    大家好 ~ 又是一個快樂的鳥日子^^ 投入在一個永遠無法畢業的行業 -''- 資訊業


    • 已編輯 I am JK 2015年2月11日 上午 10:25
    2015年2月11日 上午 10:25