[ace-users] JAWS generated error message when switching IO
strategy from Synch to Asynch on FreeBSD 6
Douglas C. Schmidt
schmidt at dre.vanderbilt.edu
Thu Aug 23 19:53:18 CDT 2007
Hi Fan,
> I realized that JAWS didn't support Asynchronous IO on UNIX after
> digging into the source code.
>
> JAWS2 does support AIO on UNIX. but there are bugs in JAWS2. First for
> ACE_Asynch_Transmit_File, you must give header before you call: io-
> >transmit_file (handler, info->path (), "", 0, "", 0); inside
> HTTP_10_write.cpp. otherwise you will get erro message like:
> ACE_POSIX_Asynch_Write_Stream::write:Attempt to write 0 bytes etc..
>
> second: ACE_Message_Block's constructor:
> ACE_Message_Block::ACE_Message_Block (const char *data, size_t size,
> unsigned long priority) has a bug, if you pass a string which include
> "\r\n", message_block will fail to consruct itself. I didn't look at
> code to figure out where is the bug.
>
>After fix forementioned bug, JAWS2 works on FreeBSD 6 with AIO.
If you could send us patches based on the latest version of JAWS2 that
would be super. Please see
http://www.dre.vanderbilt.edu/~schmidt/DOC_ROOT/ACE/apps/JAWS2
for the latest.
Thanks,
Doug
--
Dr. Douglas C. Schmidt Professor and Associate Chair
Electrical Engineering and Computer Science TEL: (615) 343-8197
Vanderbilt University WEB: www.dre.vanderbilt.edu/~schmidt
Nashville, TN 37203 NET: d.schmidt at vanderbilt.edu
More information about the Ace-users
mailing list