waithandle

    9

    6답변

    Thread.Sleep (timeout) 및 resetEvent.Wait (timeout)은 실행이 적어도 timeout 밀리 초 동안 일시 중지되도록하므로 둘 사이에 차이가 있습니까? 나는 Thread.Sleep이 쓰레드가 그것의 타임 슬라이스의 나머지를 포기하도록하고, 따라서 요청 된 것보다 훨씬 더 오래 지속되는 수면을 초래할 수 있음을 안다. Man

    0

    1답변

    ASp.NET 응용 프로그램에 저장. 버튼을 클릭하면 하나의 텍스트 파일에 액세스하고 내용을 읽고 다른 대상에 저장하고 있습니다. 두 번 사용자가 교착 상태 (스레드가 다른 프로세스에서 사용 중임)에서이 버튼을 클릭하는 동안 발생하는 문제를 처리하는 방법이 있으므로 각 사용자를 하나씩 읽으려는 중 하나가 처리 방법을 제안 할 수 있습니다. waithandl

    4

    1답변

    여기 재미있는 것이 조금 있습니다. 나는 고정 된 수의 쓰레드에 다수의 프로세싱 연산을 "멀티플렉싱"하는 클래스를 가지고있다. 전형적인 경우는 일종의 생산자/소비자 문제입니다. 각 작업은 WaitHandle (이 경우 대기열에있는 항목 수를 추적하는 세마포어)과 호출 할 대리자로 구성됩니다. 예를 들어 두 개의 생산자 (A와 B)가있어 두 개의 개별 대기열

    1

    1답변

    Compact Framework 2.0 응용 프로그램 중 하나에서 TcpClient을 사용하고 있습니다. TCP 서버에서 정보를 받고 싶습니다. Compact Framework는 "대형"프레임 워크의 시간 초과 메커니즘을 지원하지 않으므로 시간 초과 작업을 구현하려고합니다. 기본적으로, 나는 다음을 수행 할 : IAsyncResult result = net

    2

    3답변

    일부 데이터를 처리하고 저장하기 위해 생산자 소비자 패턴을 사용하려고합니다. 내가 여기에 두 therads 사이에 신호를위한 AutoResetEvent를 사용하고 여기 private void SaveResults() { Model dataAccess = new Model(); while (!processingComplete

    2

    1답변

    스레드 풀에서 대기중인 작업자와 WaitHandle.WaitAll()을 사용하여 모든 스레드가 완료 될 때 실패한 작업자를 추적 (계산)하는 좋은 방법을 찾고 있습니다. 연동 카운터는 좋은 기술입니까, 아니면 더 강력한 전략입니까?

    14

    6답변

    .NET 스레딩에 대해 읽었으며 ManualResetEvent을 사용하는 일부 코드에서 작업하고있었습니다. 인터넷에서 많은 코드 샘플을 발견했습니다. WaitHandle이는 폐기 패턴을 구현 WaitHandle에 대한 문서를 읽을 때 그러나, 나는 다음과 같은 보았다. Finalize 구현 및 비 관리 리소스 정리 정리를 참조하십시오. 샘플의 아무도 자신이

    1

    1답변

    두 프로세스간에 통신하기 위해 NamedPipeServerStream을 사용하고 있습니다. 다음은 파이프를 초기화하고 연결하는 코드입니다. void Foo(IHasData objectProvider) { Stream stream = objectProvider.GetData(); if (stream.Length > 0) {

    0

    4답변

    내 디자인을 다시 생각할 필요가 있다고 생각합니다. 내 컴퓨터가 완전히 멈추는 버그를 좁히는 데 어려움을 겪고 있습니다. 때로는 VS 2010에서 HRESULT 0x8007000E을 던지기도합니다. 콘솔 응용 프로그램 (나중에 서비스로 변환 할 예정)이 있습니다. 데이터베이스 큐를 기반으로 파일을 전송합니다. 전송할 수있는 스레드를 제한하고 있습니다. 이는

    2

    5답변

    64 스레드 이상의 가능한 모든 스레드가 작업을 완료 할 때까지 기다릴 기본 스레드가 필요한 시나리오가 있습니다. 그 때문에 다음 도우미를 작성했습니다 유틸리티이 유틸리티 방법으로 public static void WaitAll(WaitHandle[] handles) { if (handles == null) throw new