Microsoft MVP성태의 닷넷 이야기
Visual C++ : 17. overwrite_buffer, unbounded_buffer, combinable [링크 복사], [링크+제목 복사],
조회: 17230
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 


overwrite_buffer, unbounded_buffer, combinable


Visual Studio 2010 과 함께 "다중 작업" 에 대한 지원이 Native/Managed 모두에서 소개되고 있습니다.

재미있는 것은, 2가지 모두 "개념"을 풀이하는 접근방식이 비슷하다는 것입니다. 이 때문에 비록 닷넷 개발자라고 하더라도 Visual C++ 에 추가된 다중 작업 프로그래밍을 이해하면 덩달아 .NET 언어 영역에서도 이해가 됩니다.

실제로, 이번에 추가되는 "Asynchronous Agents Library"를 보면 Axum 에서 소개된 용어와 겹치는 것을 볼 수가 있지요.




하나씩 하나씩 시간 날때 마다 틈틈이 공부하시는데, 우선 C++ 하시는 분들은 제목에 소개된 3가지 overwrite_buffer, unbounded_buffer, combinable 버퍼는 이번에 익혀보시는 것도 좋겠습니다.

마침, combinable에 대해서는 다음에 잘 소개가 되고 있습니다.

Parallel Patterns Library(PPL) - combinable
; http://vsts2010.net/148

처음에 combinable 을 보고 깜짝 놀랬습니다. for 문에서의 동기화 병목현상을 해결하기 위해 TLS를 생각해내다니... 늘 TLS를 알고 있으면서도 저 같은 경우에는 for 문의 동기화 병목현상을 해결하는 데 사용할 수 있을 거라고는 생각지 못했었습니다.

다음의 글을 읽으면, overwrite_buffer와 unbounded_buffer버퍼의 차이점을 예제와 함께 소개하고 있습니다. (사실, 이 글은 그 이외에도 다중 작업에 대한 재미있는 내용이 많이 있으니 꼭 읽어보시기 바랍니다.)

Four Ways to Use the Concurrency Runtime in Your C++ Projects
- Managing Shared State with Message Blocks
; http://msdn.microsoft.com/en-us/magazine/ee309514.aspx

혹시나, Axum을 맛보고 싶다면, 위의 C++ 글을 먼저 읽어본 후에 다음의 글을 읽어보실 것을 권합니다.

The Polyglot Programmer
- Concurrency with Channels, Domains and Messages
; http://msdn.microsoft.com/en-us/magazine/ee412254.aspx

이어서, 위의 Axum 글을 읽고 나면 "철학자들의 식사"문제에 관한 VC++ 구현 방식이 조금씩 눈에 들어옵니다. ^^

Asynchronous Agents Library로 Dining Philosophers 문제 해결하기 - 1
; http://vsts2010.net/120

Asynchronous Agents Library로 Dining Philosophers 문제 해결하기 - 2 
; http://vsts2010.net/129




[이 토픽에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]







[최초 등록일: ]
[최종 수정일: 11/11/2009]


비밀번호

댓글 작성자
 




... 31  [32]  33  34  35  36  37  38  39  40  41  42  43  44  45  ...
NoWriterDateCnt.TitleFile(s)
398정성태8/12/200613175Debug : 4. SOS로 Managed 객체의 크기 구하는 방법
397정성태8/12/200613628IIS - 4. Extending the TreeView in IIS 7 in Windows Vista파일 다운로드1
396정성태8/11/200612951TFS : 21. Process Template Schemas Download
395정성태8/10/200612813개발환경 구성 : 21. Introduction to Visual Studio 2005 Team System Guide
394정성태8/10/200614986개발환경 구성 : 20. VHD 파일 크기 줄이기파일 다운로드1
392정성태8/9/200612784개발환경 구성 : 19. 몇 가지 유용한 ASP.NET 아티클 링크
393정성태8/10/200612542    답변글 개발환경 구성 : 19.1 몇 가지 유용한 ASP.NET 아티클 링크
391정성태8/9/200612206개발환경 구성 : 18. CardSpace 구현 예제파일 다운로드1
390정성태8/9/200611915개발환경 구성 : 17. 주의해야 할 프로그래밍 패턴
389정성태8/8/200617318C# event 와 delegate 의 차이?파일 다운로드1
388정성태8/7/200611867.NET : 10. C# 3.0 소식
387정성태10/20/200612697Vista : 7. System Services change in Windows Vista
385정성태10/20/200613269.NET 3.0 : 2. WCF Service with .asmx extentions 파일 다운로드1
384정성태10/20/200613019Vista : 6. Programming the Windows Vista Event Log [1]
383정성태10/20/200613055Vista : 5. MSDE Will Not Be Supported on Vista
382정성태10/20/200615269Vista : 4. IE 7+ 이름 변경
381정성태8/7/200611766개발환경 구성 : 16. Windows RSS API 사용법파일 다운로드1
380정성태8/4/200611764개발환경 구성 : 15. Windows Command Line Auto Completion
379정성태8/1/200611427.NET : 9. Self compiling scripts for .NET languages: C#, VB.NET and JScript.NET파일 다운로드1
378정성태8/1/200611863개발환경 구성 : 14. [사용설명서] SQL Server Everywhere 버전
377정성태7/31/200612063개발환경 구성 : 13. 도움말 생성기 - Sandcastle
386정성태8/7/200611724    답변글 개발환경 구성 : 13.1 Sandcastle 사용예파일 다운로드1
376정성태7/25/200611351TFS : 20. TFS 사용 현황 사례
375정성태7/25/200611634개발환경 구성 : 12. [CodePlex] 신규 프로젝트 - TFS File Sync
374정성태7/24/200613490Reflection 의 속도 향상을 원한다면?
373정성태7/23/200612663.NET : 8. The ADO.NET Entity Framework Overview [2]
... 31  [32]  33  34  35  36  37  38  39  40  41  42  43  44  45  ...