2009-12-30 7 views
2

기본 앱 도메인이 아닌 경우를 가정 해 보겠습니다. 기본 앱 도메인에 대한 참조를 가져 와서 그 안에 코드를 생성하는 스레드를 생성하려고합니다. 이것이 가능한가? 이 작업을 수행하는 유일한 방법은 내 어셈블리를 기본 응용 프로그램 도메인에 다시로드하고이 새 스레드를 시작하기 위해 다시로드 된 것으로 보이는 유형의 생성자 중 하나에 일부 논리를 적용하는 것입니다. 그것은 다소 복잡한 것처럼 보인다. 더 직접적인 방법이 있습니까? 반면에 일을하는 방법이 있다면 .NET의 전체 보안 모델을 우회하는 것처럼 보일 것입니다.다른 앱 도메인에서 스레드를 만들 수 있습니까?

답변

7
var ad = AppDomain.CreateDomain("mydomain"); 
ad.DoCallBack(() => 
    { 
    var t = new System.Threading.Thread(() => 
    { 
     Console.WriteLine(); 
     Console.WriteLine("app domain = " 
      + AppDomain.CurrentDomain.FriendlyName); 
    }); 
    t.Start(); 

    }); 
-1

시도 this. 이 예제에서 호스트 인스턴스의 GetAssemblyNames 호출은 두 번째 AppDomain에서 호출됩니다. 이 메서드는 코드를 호출하기위한 스레드를 쉽게 시작할 수 있습니다.

관련 문제