Slim Reader Writer Lock은 VS2010부터 지원되는 새로운 쓰레드 동기화 객체입니다.
스마트포인터 shared_ptr의 경우 참조 카운팅이 zero가 되어야 삭제 되는데, 그 시점이 약간 애매 할 수 있어 여러가지 처리를 해 줘야 합니다.
shared_ptr 생성 시점에서 deleter를 전달 할 수 있고 이를 활용하면 스마트 포인터를 더욱 스마트하게 사용 할 수 있습니다.
비동기 프로그래밍에서 futue는 강력한 도구입니다.
이전 포스팅에서 future와 then을 결합하여 연속 연결을 만드는 부분에 대하여 알아봤습니다.
future를 리턴하는 3개 이상의 비동기 연속 연결을 만드려면 unwrap을 이용해야 합니다.
코딩 컨벤션이란 협업 관계에서 프로그래머 사이의 규칙입니다.
컨벤션이 잘 되어 있을 경우 그 구조만으로 의도 파악이 쉽고(내부에서 Lock을 사용하는 함수를 바로 알아본다거나) 유지보수 비용과 버그를 줄일 수 있습니다.
컨벤션 규칙은 다양하며 본인 스타일이 있더라도 회사에서 정하는 규칙이 있을 경우 따르는 것이 좋습니다.
for_each
에 정의됨
template <class InputIterator, class Function>
Function for_each(InputIterator first, InputIterator last, Function fn);
범위 내에 원소들에 대해 함수를 실행시킵니다.
범위 내 (first
부터 last
전 까지) 원소들 각각에 대해 함수 fn
을 실행한다. 참고로 함수의 리턴값은 무시됩니다.
컴파일 타임에 지정 된 인수 형식을 사용 하는 호출 가능 형식의 반환 형식을 결정 합니다. C + + 17에 추가 되었습니다.