Hi John and ITC techies, I was looking over the description of transaction pipes and was wondering if the use of a preemptive threading package (like pthreads) is intended with this API? If the answer is "no", there is no need to continue reading. If the answer is "yes", I have a problem with the current definition of the C-side API. I noticed in the example that the user's C-code calls: svSetScope(hdlContext); dpi_pipe_c_send(...); ... svSetScope(hdlContext); dpi_pipe_c_flush(...); I assume that svSetScope() is called so that the dpi_pipe_c_send() and dpi_pipe_c_flush() reaches the correct pipe. The problem that I have is that if you're using a preemptive threading package (like pthreads), another thread could change the scope between the call to svSetScope() and dpi_pipe_c_send(), therefore sending a message to the wrong pipe/module. I would suggest adding a svScope argument to the dpi_pipe_c_* functions, so that the infrastructure will have a better chance of ensuring that the message reaches the correct pipe. Please let me know what you think. Regards, Jason Jason Rothfuss Cadence Verification Division Cadence Design Systems, Inc. 16279 Laguna Canyon Road Irvine, CA 92618 Office: +1 (949) 790-7181 Mobile: +1 (310) 210-2754 rothfuss@cadence.com www.cadence.com C a d e n c e <http://www.cadence.com>Received on Tue Dec 20 09:39:16 2005
This archive was generated by hypermail 2.1.8 : Tue Dec 20 2005 - 09:39:50 PST