php 어뜩게 ..
GitHub - krakjoe/pthreads: Threading for PHP - Share Nothing, Do Everything :)
GitHub - krakjoe/parallel: A succinct parallel concurrency API for PHP8
이케이케 보면 어뜨케 되었던 zend 함수는 서로 다른 스레드 컨텍스트에서 접근이 되어요.
어뜨케 보아도 yield 처리 없이 코루틴 구현은 안되는거 같은데요.
Task.Yield Method (System.Threading.Tasks) | Microsoft Learn
Task.ConfigureAwait 메서드 (System.Threading.Tasks) | Microsoft Learn
이케 c#에 await Task.Yield() 하는 거를 보면 스레드 컨텍스트를 바꺼가며 사용하여서 이상한 문제가 생기는데 여기에 ConfigureAwait(false)를 주어요.
예시에 ui thread를 드는데 이거는 멀티 스레드 처리를 못하는 대표적인 예시이고 외부 라이브러리에 함수 안에서 이루어지는 거도 비슷한 처지이기에 같다고 보면 될거여요.
.Resunt -> .ConfigureAwait(false).ResultConfigureAwait(false)를 주어서 c# 컨텍스트에서 php를 실행하기에 이상이 없는다 하더라도 php에 비동기 처리를 심을거인데 아직까지 이거도 테스트 하지 않고 미루어쩌. 심지어 윈도우 빌드 코드는 잊어버려서 첨부터 다시 만들어야 해요.
이케 돈이 심히 깨지는거 보면 다른데서 하려는 엄두가 안나는거 맞나요.
