On 02/28/08 16:12, Garrett D'Amore wrote:
I don't believe that new threads are created, but there are architecturally no guarantees that one invocation of a timeout function run on the same thread as another. And on an SMP system, it is entirely possible for two timeout functions to run at the same time.
A pool of threads exists to execute all timeout requests, managed nowadays using the taskq mechanism. The callout tasks are only dispatched to these threads when their time has come - prior to that they set in a big fanout structure which has them all ordered in some form of time order so we can check which if any need to be processed at each clock tick. See usr/src/uts/common/os/callout.c Gavin
smime.p7s
Description: S/MIME Cryptographic Signature
_______________________________________________ opensolaris-code mailing list [email protected] http://mail.opensolaris.org/mailman/listinfo/opensolaris-code
