'작은 책 세마포어'에서 '독점적 인 대기열'문제에 대한 해결책을 쓰려고합니다. 문제는 다음과 같이 표현됩니다 : 스레드는 볼룸 댄서를 대표하고 댄서, 지도자 및 추종자의 두 종류가 댄스 플로어에 입장하기 전에 두 대기열에서 기다리는 것을 상상해보십시오. 리더가 도착하면 기다리는 추종자가 있는지 확인합니다. 그렇다면, 그들은 모두 진행할 수 있습니다. 그렇
다음 구현이 올바른지 확실하지 않습니다. 내 스레드가 신호를 기다리는 동안 현재 스레드가 인터럽트 된 경우 finally 블록이 호출되지만 잠금을 보유하지 않기 때문에 IllegalMonitorStateException이 발생합니다. 이 경우 정확하게 try-finally 블록을 구현 했습니까? 구현해야합니까? 내가 제대로 문제를 이해하지만, 당신이 시도
class Program
{
static IEnumerable<site> list = Enumerable.Range(1, 10).Select(i => new site(i.ToString()));
static void Main(string[] args)
{
startup();
Console.ReadKey()
dispatch_semaphore_t의 상한값을 설정할 API가 없다는 것을 깨달았습니다. 세마포어 상한값을 1로 설정할 수 있으면 좋겠다. 내가 다음 코드를 테스트 대기가 작동하지 않습니다, 아무도 나에게 dispatch_semaphore_t의 상한선을 설정하는 방법을 알려주 수 있습니까? - (dispatch_semaphore_t)taskSemaphor
Java에서 ReentrantLock을 사용하여 SimpleSemaphore를 구현하고 있습니다. 이제 생성자에 정의 된대로 공정한 플래그를 추가하여 공정한 불공정 세마포로 만들려고합니다. 내 SimpleSemaphore 코드는 다음과 같습니다. 공정성 구현을 시작하는 방법에 대한 몇 가지 정보를 알려 드리겠습니다. 고맙습니다. import java.uti
나는 철학자를위한 실을 만들고있었습니다. 다음은 의사 코드입니다. while(true)
think
get left chopstick
get right chopstick
eat
putdown left chopstick
putdown right chopstick
직관적 인 것으로, 나는 젓가락을 덜어주는
모든 초기 비동기 인증 단계가 성공하려면 여러 비동기 작업이 있습니다. 세마포어를 사용하여 인증이 완료 될 때까지 모든 보안 작업을 차단합니다. 작업은 인증이 끝날 때 획득 한 보안 토큰에 의존하기 때문에 주로 타이밍 목적으로 사용됩니다. 인증에는 네트워크 요청이 포함되며 몇 초가 걸릴 수 있습니다. 내 코드의 난이도는 인증 후 발행 된 dispatch_s
세마포어를 사용하여 놀고 있지만 정의되지 않은 참조 경고가 계속 발생하여 코드가 작동하지 않습니다. 텍스트에서 예제 코드를 가져 왔지만 일부 구문에 문제가있어서 POSIX의 세마포 자습서로 가서 구문을 바꿔서 결과적으로 이러한 참조 오류가 발생했습니다. 나는 단순히 뭔가를 간과하고 있을지 모르지만 나는 그것을 발견 할 수 없다. 오류 : Producers_
Linux에서 메시지 조작 (msgrcv, msgsnd, msgctl)을 사용하여 2 진 세마포어를 구현해야합니다. 내 코드는 : 두 번째 메시지가 전송 될 수 없습니다 있도록 #include<string.h>
#include<time.h>
#include<sys/ipc.h>
#include<sys/msg.h>
#include<sys/wait.h>