2010-03-03 4 views
0

시간 제약이있는 버퍼를 프로그래밍하고 싶습니다. 즉, 문자열 목록 (예를 들어)을 계속 채울 수 있고이 목록에 하나 이상의 요소가 있는지 여부에 관계없이 목록이 다른 목록에 추가되거나 (네트워크에 전송 될 때마다) 매 2 초마다 다른 목록 문자열이 채워지는 문자열 목록이 항상 있도록 문자열 위치를 가져옵니다.C# Convoyor-Belt 형 버퍼 - 시간 제한 버퍼

C#에서 어떻게 할 수 있습니까? Timer는 작업자 스레드에서 정기적으로하는 방법을 실행하는

  • +0

    스레드 안전 버퍼를 만들려고합니다.이 버퍼는 한쪽 끝으로 밀리고 다른 쪽 끝 (대기열이라고도 함)에 나타납니다. 또한 특정 조건에 부딪혔을 때 (예 : 버퍼가 가득 차거나 일정 시간이 경과 한 경우) 버퍼의 두 번째 인스턴스를 사용하여 첫 번째 인스턴스의 항목으로 무엇인가 할 수 있습니다. 나는 너가 무엇을 요구하고 있는지 이해하려고 노력하고있다! –

    +0

    당신은 그것을 올바르게 이해했습니다. 그게 다야. – Guillaume

    답변

    1

    당신은

    • 일반 List<T> 컬렉션 클래스의 조합을 사용하여 C#으로 그렇게 할 수, 및
    • lock statement 스레드가 공유하는 리소스에 대한 액세스를 동기화합니다.
    +0

    감사합니다. 나는 그것을 시도했지만 작동하지 않았다. 단서는 타이머 스레드 외부에서 내 메인 스레드를 실행하는 것이 었습니다. – Guillaume