Programming .NET Components by Juval Lowy The following errata were *corrected* in the 4/04 reprint: Here's a key to the markup: [page-number]: serious technical mistake {page-number}: minor technical mistake : important language/formatting problem (page-number): language change or minor formatting problem (xvi) 3rd paragraph; The words "camel" and "Pascal" HAVE BEEN SWAPPED. (30) 3rd paragraph, 3rd sentence; "Reflection is particularity useful..." NOW READS: "Reflection is particularly useful..." (33) 2nd paragraph, 3rd sentence; "A multiple files assembly, on the other hand, has much more latitude in how to compose it all." NOW READS: "A multiple-file assembly, on the other hand, has much more latitude in how to compose it all." (72) 2nd paragraph, 2nd sentence; "The object should channel the implementation of both Dispose() and Finalize() to same helper method ... NOW READS: "The object should channel the implementation of both Dispose() and Finalize() to the same helper method ... {123} The note on BeginInvoke/End Invoke HAS BEEN DELETED. (124) In the Note. Declarations of 'opdel'.; "Binary Operation" NOW READS: "BinaryOperation" (136) 2nd sentence of warning block; "..., the exception will be handled as the worker thread from the thread pool, an you will never know about it." NOW READS: "..., the exception will be handled in the worker thread from the thread pool, an you will never know about it." (137) 1st full paragraph, 2nd-to last sentence; The reality is, of course, that the subscriber can't tell." NOW READS: "The reality is, of course, that the publisher can't tell." (139) 1st full paragraph, 1st sentence; "The technique shown [...]: you use the param modifier to pass in any collection of arguments, as well as the delegate containing the subscribers list." NOW READS: "The technique shown [...]: you use the params modifier to pass in any collection of arguments, as well as the delegate containing the subscribers list." (142) 2nd full paragraph, last sentence; "This implies that for every asynchronous method call, there is some overhead in terms of memory use and performance .NET supports defining fire-and-forget methods, using the OneWay attribute, which is defined in the System.Messaging namespace:" NOW READS: "This implies that for every asynchronous method call, there is some overhead in terms of memory use and performance. As an alternative, .NET supports defining fire- and-forget methods, using the OneWay attribute, which is defined in the System.Messaging namespace:" (149)first paragraph, 4th line "to the native operating" NOW READS: "to the native operating system" (152) 4th paragraph, 2nd to last sentence; "even if the sleep timeout is less than the reminder of the time slot." NOW READS: "even if the sleep timeout is less than the remainder of the time slot." (154) 2nd paragraph, last sentence; ... in this case) and avoid ... NOW READS: ... in this case and avoid ... (155) 3rd paragraph, last sentence; "(as far as the operation system is concerned)." NOW READS: "(as far as the operating system is concerned)." (185) 3rd Paragraph, 2nd Sentence; "The Set() method sets the state of the handle to signal" NOW READS: "The Set() method sets the state of the handle to signaled" (219) Example 9-5;next to last line; NOW READS: (299) "/Register the sponsor" NOW READS "//Register the sponsor" (418) 1st paragraph, 7th sentence; "..., expect that the" NOW READS: "..., except that the"