MSSQL CLR사용에 대해...

1231234 2014.12.09 15:12 Views : 3671

안녕하세요


MSSQL CLR을 이용해서 어떤 기능을 만들고 있는데요


내용은 WMI 정보를 읽어 오는 CLR프로시저인데 몇가지 항목을 루프 돌면서 가져오다 보니 속도가 너무 느려서

멀티 쓰레드를 이용해서 가져오도록 개발 중인데요


여러개의 쓰레드를 생성해서 각각 1개씩의 WMI 정보를 읽어와서 

SqlContext.Pipe.SenResultRow()를 이용해서 실행결과가 한개의 테이블 형태로 보여지게 하려는데...


CLR프로시저를 실행하면

"요청한 작업을 수행하려면 SQL Server 실행 스레드가 필요합니다. 현재 스레드는 사용자 코드 또는 SQL Server가 아닌 다른 엔진 코드에서 시작했습니다."

이렇게 오류가 뜨네요


대략 CLR 코드는 아래와 같습니다.


SqlContext.Pipe.SenResultsStart(record);

foreach (string s in arrString)

{

Thread t = new Thread(() => getWMIData(s));

t.start();

}

SqlContext.Pipe.SenResultsEnd(record);


public static void getWMIData(string s)

{

...

SqlContext.Pipe.SenResultsRow(record);

}


MSSQL CLR을 이용해서 멀티 쓰레드는 사용이 안되는건가요?


* 참고로 같은 구문을 C#프로그램으로 Console.WriteLine으로 찍어보면 정상적으로 실행됩니다.

No. Subject Author Date Views
Notice SQL강좌: 챗GPT와 함께 배우는 SQL Server 무료 강좌 목차와 소개 (2023년 9월 업데이트) 코난(김대우) 2023.08.18 237667
Notice Python 무료 강좌 - 기초, 중급, 머신러닝(2023년 6월 업데이트) 코난(김대우) 2021.01.01 94963
8404 max memomry 변경 질문 입니다. 운치 2014.12.10 2961
8403 express 는 유지관리 없는건가요? [4] Sinlay 2014.12.10 2748
8402 백업에 관련된 질문입니다.. [2] Sinlay 2014.12.10 2635
8401 테이블에서 테이블 bulk Insert 질문 [4] 양아치베이비 2014.12.10 3120
8400 동접이 많은 상황에서의 분산 [2] 전념 2014.12.09 3454
8399 행 분리 가능 할까요? [2] ssunsori 2014.12.09 2665
» MSSQL CLR사용에 대해... [1] 1231234 2014.12.09 3671
8397 라이선스 질문 삐야기 2014.12.09 2337
8396 동적쿼리 페이징을 정적쿼리로 할수가 있나요? [1] 황혼사 2014.12.08 3303
8395 SELECT문 질문있습니다. (경로표시) [1] 뽀챙 2014.12.06 3181
8394 가로로 표현하고 싶습니다만.. [1] SQL왕왕초보 2014.12.04 3804
8393 MSDTC on server 'XXXXX' is unavailable 처리 방법 [3] 토갈량 2014.12.04 3498
8392 Where 절에 조건문(?)을 변수로...가능할까요 [7] Sinlay 2014.12.04 10952
8391 스탠다즈 버전에서 데이터 감사 기능 더따뜻한 2014.12.04 3093
8390 OUTPUT 절.. MySQL에는 없나요?? [1] 없다 2014.12.03 11492
8389 Query 문의드립니다. 이런 Query가 가능한가요? [5] 컴맹 2014.12.03 2994
8388 쿼리 문의 입니다. 우영호수 2014.12.03 2895
8387 row 갯수에 관한 문의 [2] 팔개 2014.12.03 2752
8386 Sql server 2008 r2 설정 관련 질문입니다 [3] ltearl 2014.12.02 3263
8385 Index Page 가 생성되는 시점에 대해서 [2] dontcryme 2014.12.02 4612





XE Login