괴짜 프로그래머의 일상사~@@
프로그래밍, 컴퓨터, 그리고 일상에 관한 소소한 이야기들...
Blog | Guestbook
Keyword | Local | Tag
T 151 / Y 700 / Total 3405209
Catergories
Calendar
«   2023/06   »
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30  
Tag
노자, 워드, chkdsk, 배송, 네트워크, Scintilla, 트랜스포터 엑스트림, 도메인, 오프닝, 장자, 모노레일, 희소, 잠언, ReactOS, Matt Pietrek, 보안, 졸업, 공간, 7월호, 어느 멋진 순간,
Archive
Link
Search
  submit
Recent Articles
Recent Comments
Recent Trackbacks
2006/06/04 00:28
MAXIMUM_WAIT_OBJECTS

[GGGG]디버깅 작업을 할때마다 늘 느끼는 거지만 디버깅을 할 때 가장 중요한 것은 모든 것을 의심해야 한다는 점이다. 의심하고 또 의심하고, 만약 의심하지 않은 한 가지가 있다면 그놈이 버그의 원인이다. 몇일간 지겹도록 멀티쓰레딩 관련 코드를 작성하는데 버그를 잡을 수 없었다. 트레이스 메시지를 곳곳에 뿌려놓았지만 이유를 알 수 없었다.

코드는 굉장히 간단하다. N개의 작업을 쓰레드 풀을 만들어 쓰레드 개수만큼 분산 처리 하는 코드를 작성하는 것이었다. 이상하게 쓰레드 개수가 한 30개 일때는 잘 되는데 100개가 되면 오류가 나는 것이었다. 희한한 일이었다. 거기다 가끔 100개로 동작시켜도 어쩔때는 잘 될때도 있었다. Sleep을 몇군데 넣으니 잘 돌아가는 확률이 높아졌다. 하지만 여전히 가끔은 이상하게 동작하는 것이었다. 그러다 오늘에야 그 원인을 알게 되었다. 너무도 당연히 잘 될거라고 리턴값도 체크해 보지 않은 WaitForMultipleObjects가 오동작을 한 것이었다.

MSDN을 찾아보니 WaitForMultipleObjects는 MAXIMUM_WAIT_OBJECTS 개수를 넘는 것을 대기하지 못한다고 되어있었다. 덴장~ 상수를 찾아보니 64로 정의되어 있다. 그러니 당연히 100개의 이벤트를 대기하는데는 실패할 수 밖에 없었던 것이다. 곰곰 생각해 봐도 당췌 그놈이 어떻게 구현이 되어 있길래 그러한 제한을 주는지 알 수 없다. 핸들목록도 우리가 다 제공하는데 왜 64개로 제한한 것일까??? 희한하다~

하여튼 디버깅을 할 때에는 모든것을 다 의심해 보는 것이 좋다~ 의심하고 또 의심하고 또 의심해야 한다~

Trackback : http://jiniya.net/tt/trackback/213
안전놀이터 괴짜 프로그래머의 일상사~@@ - MAXIMUM_WAIT_OBJECTS https://www.mtsite-safe.com/ 2023/01/04 14:51
먹튀 괴짜 프로그래머의 일상사~@@ - MAXIMUM_WAIT_OBJECTS http://youcooldeal.com/comment/html/?10416.html 2023/01/14 17:02
먹튀검증 괴짜 프로그래머의 일상사~@@ - MAXIMUM_WAIT_OBJECTS https://rwnicholson.com/twelve-creative-ways-a-person-can-transform-your-sports-activities-community/ 2023/01/15 04:05
먹튀검증 괴짜 프로그래머의 일상사~@@ - MAXIMUM_WAIT_OBJECTS https://kiedrobakery.com/sporting-activities-community-helps-an-individual-achieve-your-ambitions/ 2023/01/15 13:12
먹튀검증사이트 괴짜 프로그래머의 일상사~@@ - MAXIMUM_WAIT_OBJECTS https://dialelectrical.co.uk/how-to-become-better-with-wagering-within-10-minutes/ 2023/01/15 13:43
먹튀세이프 괴짜 프로그래머의 일상사~@@ - MAXIMUM_WAIT_OBJECTS http://atlantafoodrave.com/2022/12/14/the-best-side-of-sports-betting-site-2/ 2023/01/15 13:52
토토사이트커뮤니티 괴짜 프로그래머의 일상사~@@ - MAXIMUM_WAIT_OBJECTS https://fq5005.com/secrets-to-getting-sports-betting-to-complete-jobs-quickly-and-successfully/ 2023/01/15 14:15
먹튀검증 괴짜 프로그래머의 일상사~@@ - MAXIMUM_WAIT_OBJECTS https://accessidroid.com/community/profile/irwinlandrum26/ 2023/01/15 19:58
안전놀이터 괴짜 프로그래머의 일상사~@@ - MAXIMUM_WAIT_OBJECTS https://www.gostopsite.com//wiki/bbs/board.php?bo_table=free&wr_id=83481 2023/01/16 05:58
먹튀검증 괴짜 프로그래머의 일상사~@@ - MAXIMUM_WAIT_OBJECTS https://4k-download.com/2023/01/08/detailed-notes-on-sports-betting-2/ 2023/01/16 09:42
안전놀이터 괴짜 프로그래머의 일상사~@@ - MAXIMUM_WAIT_OBJECTS http://artnutzz.com/index.php?option=com_k2&view=itemlist&task=user&id=1189900&lang=en 2023/01/16 19:41
먹튀세이프 괴짜 프로그래머의 일상사~@@ - MAXIMUM_WAIT_OBJECTS http://abudabi-binary-option.forexbinaryoption.shop/?qa=4391&qa_1=how-sports-betting-site-can-save-you-time-stress-and-money 2023/01/17 15:28
안전놀이터 괴짜 프로그래머의 일상사~@@ - MAXIMUM_WAIT_OBJECTS https://aidealareussite-test.app.unistra.fr/blog/index.php?entryid=16449 2023/01/18 15:49
먹튀 괴짜 프로그래머의 일상사~@@ - MAXIMUM_WAIT_OBJECTS http://flashcoins.com.br/spanish/5-simple-statements-about-sports-betting-site-explained.html 2023/01/19 10:43
먹튀검증사이트 괴짜 프로그래머의 일상사~@@ - MAXIMUM_WAIT_OBJECTS http://www.lovers.host/other-market/sports-betting-for-dummies.html 2023/01/20 12:18
먹튀세이프 괴짜 프로그래머의 일상사~@@ - MAXIMUM_WAIT_OBJECTS http://gyeongshin.co.kr/ksen/bbs/board.php?bo_table=free&wr_id=81695 2023/01/21 09:16
먹튀검증 괴짜 프로그래머의 일상사~@@ - MAXIMUM_WAIT_OBJECTS https://indiamirror.co.in/indicators-on-sports-betting-site-you-should-know/ 2023/01/22 06:22
토토컴퍼스 괴짜 프로그래머의 일상사~@@ - MAXIMUM_WAIT_OBJECTS https://www.totocompass.com/ 2023/01/27 17:42
토토사이트 괴짜 프로그래머의 일상사~@@ - MAXIMUM_WAIT_OBJECTS https://www.tototraffic.com 2023/01/27 21:08
바카라사이트 괴짜 프로그래머의 일상사~@@ - MAXIMUM_WAIT_OBJECTS https://www.casino-holic.com/baccaratsite 2023/01/28 09:56
먹튀검증업체 괴짜 프로그래머의 일상사~@@ - MAXIMUM_WAIT_OBJECTS https://mt-ri.com 2023/01/28 13:39
토토사이트 괴짜 프로그래머의 일상사~@@ - MAXIMUM_WAIT_OBJECTS https://tototraffic.com/totocommunity 2023/01/28 14:54
사설토토 괴짜 프로그래머의 일상사~@@ - MAXIMUM_WAIT_OBJECTS https://tototraffic.com/editorial 2023/01/28 20:36
먹튀검증사이트 괴짜 프로그래머의 일상사~@@ - MAXIMUM_WAIT_OBJECTS https://xn--80aykid.xn--p1ai/5-simple-statements-about-sports-betting-site-explained/ 2023/01/28 21:10
모바일바둑이 괴짜 프로그래머의 일상사~@@ - MAXIMUM_WAIT_OBJECTS https://www.vadoogi.com 2023/01/29 12:16
먹튀검증사이트 괴짜 프로그래머의 일상사~@@ - MAXIMUM_WAIT_OBJECTS https://www.mtcleaner.com/verificationsitess 2023/02/01 06:21
구글상위작업 괴짜 프로그래머의 일상사~@@ - MAXIMUM_WAIT_OBJECTS https://line-seo.net/ 2023/02/02 03:45
토토디비사기꾼 괴짜 프로그래머의 일상사~@@ - MAXIMUM_WAIT_OBJECTS https://www.dbcall.net/ 2023/02/06 08:25
메이저놀이터 괴짜 프로그래머의 일상사~@@ - MAXIMUM_WAIT_OBJECTS https://www.tototraffic.com/majorsite 2023/02/06 19:37
토토사이트 괴짜 프로그래머의 일상사~@@ - MAXIMUM_WAIT_OBJECTS https://www.toto-joy.com 2023/02/07 14:12
먹튀사이트 괴짜 프로그래머의 일상사~@@ - MAXIMUM_WAIT_OBJECTS https://mt-cleaner.com/eatandsplashs 2023/03/15 07:37
토토사이트 괴짜 프로그래머의 일상사~@@ - MAXIMUM_WAIT_OBJECTS https://Totolab010.com/ 2023/05/11 19:27
토토검증 codewiz :: MAXIMUM_WAIT_OBJECTS https://mt-ofc.com 2023/05/16 03:45
비트코인마진거래 codewiz :: MAXIMUM_WAIT_OBJECTS https://www.fxaxp365.com 2023/06/03 23:42
구글상위노출교육 codewiz :: MAXIMUM_WAIT_OBJECTS https://www.googlegoood.com/seo-education 2023/06/06 06:23
Z (2006/06/04 01:12)
NTSTATUS
NtWaitForMultipleObjects (
IN ULONG Count,
IN HANDLE Handles[],
IN WAIT_TYPE WaitType,
IN BOOLEAN Alertable,
IN PLARGE_INTEGER Timeout OPTIONAL
)
{
//
// If the number of objects is zero or greater than the largest number
// that can be waited on, then return and invalid parameter status.
//
try {
if ((Count == 0) || (Count > MAXIMUM_WAIT_OBJECTS)) {

Status = STATUS_INVALID_PARAMETER_1;
leave;
}
// If the wait type is not wait any or wait all, then return an invalid
// parameter status.
//

if ((WaitType != WaitAny) && (WaitType != WaitAll)) {

Status = STATUS_INVALID_PARAMETER_3;
leave;
}
codewiz (2006/06/04 03:12)
ㅎㅎ~ 질럿님 빨리도 리플 다셨네용~
결국은 내부 지역 변수 버퍼 크기 때문이군요.

록큰롤 (2006/06/09 06:03)
디버깅 너무 싫어요..ㅎㅎ

카지노 (2021/05/14 21:55)
스포츠토토 안전놀이터 슬롯사이트 토토사이트 주소 토토 뱃사공 bebe40.com 스포츠중계 아이린 딥페이크 신재은 비키니 안철수관련주 골프시즌권 신민아결혼 슬롯 전용 사이트 센즈카지노 인터넷카지노사이트 카지노뷰 오션파라다이스

안전 토토사이트 (2021/05/14 21:55)
스포츠토토 안전놀이터 슬롯사이트 토토사이트 주소 토토 뱃사공 bebe40.com 스포츠중계 예비군일정 보겸 초아유튜브 임대차보호법 코리안좀비 정찬성 우리카지노 놀이터추천 섹시게이밍 스코어사이트 토토뱃사공

토토사이트 (2023/02/06 10:59)
좋은 글 감사!

Name   Password   Home   Secret   Submit
 Prev   1  ...  418   419   420   421   422   423   424   425   426  ...  604   Next 
codewiz’s Blog is powered by Tattertools.com / Designed by faido