Re: bpc_send semantics and per-channel application-specific data?

Darren New <[email protected]> Fri, 10 Oct 2003 11:50:50 -0700
Newsgroups gmane.network.beep.beepcore.c.general
Message-ID <[email protected]>
David C Niemi wrote:
> I noticed that buffers are generally copied before calling bpc_send().  
> Why is this necessary, and are there circumstances under which it may be 
> omitted?

The core part of the protocol doesn't copy the data around. You ask the 
core for a frame to store the data in, and the core sends directly from 
that memory space until it's done. That was the original code, and I 
haven't looked for a while, and it's possible the higher-level code 
copies the data into an allocated frame instead of letting you allocate 
your own, tho. But minimizing copies was one of the (annoying ;-) 
requirements for the core code.

William would have to tell you whether the threaded layer copies the data.

> I also need to keep some information that is per-channel and per-message 
> that is application-specific.  Is there any preexisting clean place to put 
> such things, or do I need to make and maintain my own data structures for 
> both?

I don't think there's any such place in the core for doing that, since 
the core manages its own structures internally. If there were a pointer 
to data, there would have to be a pointer to the clean-up routine. 
Actually, I kind of remember doing something like that, but I don't 
remember if it was for internal or external data. But it should be 
pretty obvious whether it's in the core data structures or not. They're 
not that complicated. :-)


> 
> William and Darren, thanks again for your previous help.
> 
> -------------------------------------------------------
> -- David C. Niemi           Adeptech Systems, Inc.   --
> -- Reston, Virginia, USA    http://www.adeptech.com/ --
> -------------------------------------------------------
> 
> 
> 
> -------------------------------------------------------
> This SF.net email is sponsored by: SF.net Giveback Program.
> SourceForge.net hosts over 70,000 Open Source Projects.
> See the people who have HELPED US provide better services:
> Click here: http://sourceforge.net/supporters.php
> _______________________________________________
> Beepcore-c-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/beepcore-c-users
> 


-- 
Darren New, San Diego CA USA (PST)
Don't take home left-over tripe.
   It'll just digest itself before
     you get around to eating it.




-------------------------------------------------------
This SF.net email is sponsored by: SF.net Giveback Program.
SourceForge.net hosts over 70,000 Open Source Projects.
See the people who have HELPED US provide better services:
Click here: http://sourceforge.net/supporters.php