From bf11312379314c515c882e3640b10ffd7c8b490d Mon Sep 17 00:00:00 2001 From: rswindell <> Date: Wed, 18 Jul 2001 20:03:05 +0000 Subject: [PATCH] Added yield function to reduce DOS program CPU hogging. --- src/sbbs3/sbbsexec.c | 8 ++++++-- src/sbbs3/vdd_func.h | 1 + 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/sbbs3/sbbsexec.c b/src/sbbs3/sbbsexec.c index bd82a7884a..42eec5b6ce 100644 --- a/src/sbbs3/sbbsexec.c +++ b/src/sbbs3/sbbsexec.c @@ -62,6 +62,7 @@ __declspec(dllexport) void __cdecl VDDDispatch(void) static RingBuf rdbuf; static FILE* fp; + retval=0; node_num=getBH(); switch(getBL()) { @@ -280,7 +281,6 @@ __declspec(dllexport) void __cdecl VDDDispatch(void) retval=0; break; -#if 1 case VDD_INBUF_FULL: if(!GetMailslotInfo( rdslot, // mailslot handle @@ -338,7 +338,11 @@ __declspec(dllexport) void __cdecl VDDDispatch(void) retval=1; online_poll++; break; -#endif + + case VDD_YIELD: + Sleep(1); + break; + default: if(fp!=NULL) fprintf(fp,"!UNKNOWN VDD_OP: %d\r\n",getBL()); diff --git a/src/sbbs3/vdd_func.h b/src/sbbs3/vdd_func.h index 4b177d0092..d100edf945 100644 --- a/src/sbbs3/vdd_func.h +++ b/src/sbbs3/vdd_func.h @@ -50,6 +50,7 @@ enum { ,VDD_OUTBUF_FULL ,VDD_OUTBUF_SIZE ,VDD_ONLINE + ,VDD_YIELD }; typedef struct { -- GitLab