스마트포인터 사용여부 및 가능성
안녕하십니까 선생님. 훌륭한 강좌 잘 들었습니다.
비동기 콜백 부분에서 버퍼와 오버랩드구조체를 동적할당하고 콜백함수에 주소를 주고 다쓴후에 딜리트를 하는 방식을 유니크나 쉐어드포인터 같은 스마트포인터로 대체가 가능할까요?
특히 쉐어드는 잘만쓰면 정말유용할것 같긴한데 서버개발할때 레퍼런스 카운팅에 대한 아토믹연산의 오버헤드에 대해 감당할만하다고 생각하시는지요?
또한 스마트포인터를 쓰고싶어도 콜백함수로 등록가능한 함수형태가 정해져있어서 스마트포인터 그 자체를 넘겨줄순없는것같은데
혹시 방법이있다면 조언좀 부탁드리겠습니다.
감사합니다.
Answer 2
0
아니오. 대체하기 어렵습니다. 제가 모르는 것일 수도 있겠으나 일단 시도조차 하지 않았습니다. 스마트 포인터가 갖는 장점이라면 자동 삭제 정도인데...이런 기능은 비동기 처리 시 큰 도움이 되지 않습니다. 물론 클라이언트 세션 객체 같은 것을 shared_ptr로 관리하는 방식은 생각 해 볼 수 있겠습니다. 그런데 여기에 성능 이슈까지 고려한다면...굳이 스마트 포인터가 필요한 것인지 의문입니다.
그리고 시도해본 것은 아니지만 스마트 포인터 인스턴스 자체를 넘기는 방식으로 비동기처리 시 사용 할 수는 있겠으나 그렇게 한다면 의미가 없지 않나 생각합니다. 참고하시기 바랍니다. :)
0
안녕하세요, 인프런 AI 인턴입니다.
스마트 포인터의 사용 가능성과 이와 관련된 오버헤드, 그리고 콜백 함수에서의 활용 방안에 대한 답변을 원하시는 것으로 이해했습니다. 이에 대해 강의 내에서 선생님이 답변해주신 유사한 내용의 질문이 있으니 해당 내용을 참고해주시면 도움이 될 것 같습니다.
질문자님의 경우에 해당하는 답변이 없지만, IOCP와 관련된 내용에서 유사한 상황에 대해 답변한 경우는 다음과 같습니다.
제목: IOCP에서 WSASend 사용 관련 및 시간 소요 요청 처리
링크: IOCP에서 WSASend 사용 관련 및 시간 소요 요청 처리제목: IOCP의 WSAOVERLAPPED 구조체 상속에 관해서..
링크: IOCP의 WSAOVERLAPPED 구조체 상속에 관해서..
해당 링크들을 참고하시어 스마트 포인터에 관한 내용을 보완하시거나, 기술적인 디테일을 추가로 질문해보실 수 있을 것입니다.
감사합니다.
recv, send 리턴값 질문
0
78
2
스타,워크와 같은 디스창 (Disconnected)도 비정상 종료에 대응하는 시스템으로 봐야할까요?
0
96
2
수업과 관련해서 읽어볼 만한 책 있나요?
0
111
1
서버가 끊어버리는것에 대한 질문
0
122
2
TCP 의도적 장애 테스트 질문
0
159
2
shutdown()을 호출하는 이유
0
165
1
프로토콜이 적용된 파일 송신 서버에서 send, recv 질문 있습니다!
0
153
2
"파일 송신 서버 제작" 강의 질문입니다!
0
151
2
대표적인 장애 유현 2
0
131
2
대표적인 TCP 장애 유현
0
161
2
이벤트 기반 파일 입출력과 callback 기반 파일 입출력이 네트워크에도 쓰이는 기법인가요?
0
121
2
개발환경 질문이 있습니다.
0
137
1
TCP/IP vs UDP , 멀티 스레드에서의 병목 현상에 대한 질문이 있습니다!
0
221
2
메모리 관련 문제로 질문드립니다.
0
187
2
테스트 환경 질문드립니다!
0
168
2
ThreadAcceptLoop 의 우아한(?) 종료에 대해 질문드립니다.
0
419
2
하트비트 시 서버에서의 연결 종료
0
451
2
강사님 질문 드립니다.
0
249
1
소켓 입/출력 설계 정리
0
450
1
멀티스레드 기반 서버 관련 질문..!
0
412
2
빅 엔디언과 리틀 엔디언
0
378
2
TIME_WAIT 관련 문의드립니다.
0
226
1
강사님 강의자료 인쇄용으로 부탁드립니다.
0
288
1
bind 함수 관련 궁금증
0
357
2

