주 스레드 프로세스에 개체를 전달하려고 시도했지만 생각했던대로 작동하지 않습니다.스레드에 개체 전달 실패 - C#
Thread thrUDP;
그런 다음 나는 내가 필요로하는 데이터를 저장하는 데 사용하는 객체 생성 :
먼저 내가 스레드 생성
UDPData udpData;
가 지금은 정확한 데이터 따르며, 객체를 초기화를 설정 새로운 스레드를 시작하고 Start() 메소드에 전달 된 객체로 시작하십시오.
udpData = new UDPData("224.5.6.7", "5000", "0", "2");
thrUDP = new Thread(new ParameterizedThreadStart(SendStatus));
thrUDP.Start(udpData);
이것은 th입니다. 내가 잠시 다시 스레드를 사용하여 기억하고 내가 길을 잘못이 일을 오전, 그들이에 데이터를 전달하는 매우 어려운 아니었다 확신 아니면 그냥 실종
private void SendStatus(UDPData data)
{
}
을 : 전자의 방법은 내가 시작하고자하는 코드 조각?
감사합니다.
public delegate void ParameterizedThreadStart(object obj);
분명히,이 위양이 방법의 서명과 호환되지 않습니다, 그리고 System.Threading.Thread
임의 delegate- 작업을 얻을 수있는 직접적인 방법이되지 않습니다 :
아, 그래서 단순히 매개 변수 유형을 변경 한 다음 방법에서 올바른 유형으로 캐스팅하는 데 필요한! 감사합니다.] –
@ Jamie Keeling : 네, 맞습니다. 그것은 약간의 고통입니다, 그렇지 않습니다 ... – Ani
나는 동의하지 않습니다 - 일반적으로 수업은 내부에서 새로운 스레드를 만들어야합니다 - 외부에서 스레드를 만드는 것은 동기화가 복잡해지면 내 pov의 데스트 마스터를위한 방법입니다. – weismat