7
개체 풀 관리를 위해 scala에서 선호되는 방법은 무엇입니까?개체 풀 관리를위한 scala-way
대용량의 단일 스레드 개체를 만들고 삭제해야합니다 (동기화 할 필요 없음). C++에서는 정적 객체 배열을 사용했습니다.
스칼라로 대처하기 위해 관용적이고 효과적인 방법은 무엇입니까?
개체 풀 관리를 위해 scala에서 선호되는 방법은 무엇입니까?개체 풀 관리를위한 scala-way
대용량의 단일 스레드 개체를 만들고 삭제해야합니다 (동기화 할 필요 없음). C++에서는 정적 객체 배열을 사용했습니다.
스칼라로 대처하기 위해 관용적이고 효과적인 방법은 무엇입니까?
나는 그것을 액터로 감쌀 것입니다. 당신이 익숙하지 않은 경우, Akka 체크 아웃 : https://github.com/derekjw/fyrie-redis/blob/master/src/main/scala/net/fyrie/redis/ConnectionPool.scala
액터 모델은 배우가 수신 메시지를 한 번에 하나씩 처리하기 때문에 단일 스레드 액세스를 보장 할 수 있습니다 : http://doc.akka.io/docs/akka/2.0.3/scala/actors.html
이 꽤 좋은 예입니다. 이는 액터 내부의 매우 간단한 코드와 매우 간단한 API로 이어집니다.
관용적 인 방법은 gc가 작업을하고 걱정하지 않는 것입니다. 이것이 충분히 빠르지 않다면 관용적 인 일은 GC를 조정하는 것입니다. –
왜 개체 풀이 필요하다고 생각하십니까? 첫 시도로 GC를 사용 해보려고 했습니까? 풀링 된 객체를 초기화/재설정하는 비용이 높습니까? – paradigmatic
입자 시스템을 쓰고 있습니다. 입자는 빠르게 살고 어린 시절에 죽습니다. 사실 그렇게 많은 입자가 있습니다. 모든 파티클은 속성과 필드면에서 동일하기 때문에 대처하는 가장 눈에 띄는 방법은 객체 풀을 만드는 것입니다. – ayvango