새로운 Visual Studio 네이티브 Concurrency 런타임 (ConcRT)을 사용하여 약간의 문제가 발생했습니다. 데이터의 크로스 스레드 이동에 이동 의미가 없다는 정당한 이유가 있습니까? 그것들은 모두 복사 의미론입니다. 동시 대기 행렬로 이동할 수 없으며 asend와 함께 이동할 수 없습니다. 동시 큐 구성을 이동할 수도 없습니다.Rvalue refs concurrency
6
A
답변
3
이 특정 프레임 워크를 모르지만 일반적으로 스레드 간 대기열의 경우 복사 의미 체계가 있어야합니다.
개체를 만들고 참조/포인터를 가져 와서 큐로 이동한다고 가정 해 보겠습니다. 그런 다음 다른 스레드가 큐에서 큐를 이동합니다. 그런 다음 두 스레드가 동시에 액세스 할 수 있습니다.
일반적인 경우에는 추가 또는 제거가 아닌 복사 만 있으면됩니다 (둘 다 필요 없음). 예 : 카피 - 인 - 아웃 - 아웃 (copy-in move-out)이지만, 이는 의미 상 카피 인 카피 아웃과 동일 할 것이다.
1
rvalue 지원이 ConcRT, 에이전트 및 PPL을 향상시킬 수있는 영역은 많이 있습니다. 큰 소프트웨어 프로젝트처럼 다른 새로운 기능을 사용하는 기능을 만들 때 모든 것을 한 번에 제공 할 수있는 위험이 항상 존재합니다.
PPL은 중요한 발전 이었지만 결코 "완료"라고 말한 적이 없습니다. :-)
ConcRT, PPL 또는 에이전트 라이브러리에서 이동 의미 체계를 지원해야하는 경우에는 connect.microsoft.com에서 제안 사항을 제시하십시오.
관련 문제
- 1. 가장 중요한 const & rvalue refs
- 2. Eventmachine : Concurrency
- 3. NHibernate Optimistic Concurrency
- 4. 를 rvalue, 템플릿 해상도와
- 5. Java Concurrency : Exclusive Queue 문제
- 6. android random crashing concurrency issues
- 7. "Java Concurrency in Practice"예제
- 8. Visual Studio 2010에서 rvalue 참조
- 9. 치명적인 : refspec의 원격 부분이 .git/refs/heads/master의 유효한 이름이 아닙니다. .git/refs/remotes/origin/master
- 10. 올바르게 .git/refs/changes/*를 삭제하는 방법
- 11. Git에서 "refs/bisect/bad"브랜치를 없애는 법
- 12. C++ 0x에서 rvalue 참조로 반환 값이 전달됩니까?
- 13. 이 rvalue 호출이 모호한 이유는 무엇입니까?
- 14. rvalue 레퍼런스는 암시 적 변환을 허용합니까?
- 15. 초기화 목록 내의 Rvalue 참조 사용
- 16. 명명 된 rvalue 참조의 유형은 무엇입니까?
- 17. rvalue 참조로 함수 템플릿 전문의 동작
- 18. rvalue 참조로보다 효율적으로 반환됩니까? 예를 들어
- 19. 를 rvalue 참조, 포인터, 복사 생성자
- 20. 데이터베이스 : MVCC (Multiversion Concurrency Control) 란 무엇이며 누가 그것을 지원합니까?
- 21. git push 명령으로 모든 refs 목록을 가져 오는 방법은 무엇입니까?
- 22. git push origin master : refs/heads/master 어떤 일을합니까?
- 23. C++ 0x rvalue 참조가 기본값이 아닌 이유는 무엇입니까?
- 24. STL에서 여분의 할당과 마 법적 공간 축소 - rvalue 참조 사용
- 25. "Java Concurrency in Practice"에서 효율적이고 확장 성있는 결과 캐시에 SoftReferences 추가
- 26. test.pl 줄 10에서 "strict refs"가 사용되는 동안 문자열 ("VIEW_hash")을 해시 참조로 사용할 수 없습니다.
- 27. git 오류 - 일부 refs (팩 객체가 이상한 오류로 인해 사망 함)를 푸시하지 못했습니다.
- 28. C++ 0x : 암시적인 const char * 생성자가있는 클래스의 경우 Rvalue 참조 매개 변수가 일치합니다.
- 29. C++ 0x RValue 참조 또는 다른 기능이 스트림 성능에 영향을 미칩니 까?
- 30. rvalue *에 대한 std :: string overload "substr"이 리소스를 도용 할 수 있습니까?
Hehe, CCR에 대한이 시작 페이지에 * 명시 적으로 * 나열되어 있습니다. http://msdn.microsoft.com/en-us/library/dd504870.aspx C + + 0x 개 개선. 이 같은 코드는 잠시 끓습니다. –
@ 한스 : 그것은 일반적으로 "우리는 MSVC10에서 이것을 지원합니다"라는 우호적 인 언급입니다. CCR에는 특별히 그것에 대한 것이 없습니다. – Puppy
방금 CCR의 초보자 용 페이지에 등록 된 것이 재미 있다고 생각했습니다. –