Errata

Programming .NET Components

Errata for Programming .NET Components, Second Edition

Submit your own errata for this product.

The errata list is a list of errors and their corrections that were found after the product was released. If the error was corrected in a later version or reprint the date of the correction will be displayed in the column titled "Date Corrected".

The following errata were submitted by our customers and approved as valid errors by the author or editor.

Color key: Serious technical mistake Minor technical mistake Language or formatting error Typo Question Note Update

Version Location Description Submitted By Date submitted Date corrected
Printed
Page ...

HAS BEEN DELETED.

Anonymous    May 01, 2006
Printed
Page 220
at the bottom

or to have a default constructor:

public class MyClass<T> where T : new( )

Anonymous    May 01, 2006
Printed
Page 244

Example 8-15 is missing this code:

~WorkerThread()

{

Kill();

}

Anonymous   
Printed
Page 246

IsAlive should be:

public bool IsAlive

{

get

{

if(m_ThreadHandle.SafeWaitHandle.IsClosed)

{

return false;

}

Debug.Assert(m_ThreadObj != null);

bool handleSignaled = m_ThreadHandle.WaitOne(0,true);

while(handleSignaled && m_ThreadObj.IsAlive)

{

Thread.Sleep(0);

}

return m_ThreadObj.IsAlive;

}

}

Anonymous   
Printed
Page 248

Remove this text:

However, because Kill() is called on the client thread, the WorkerThread
object must store a Thread object referring to the worker thread as a member
variable. Fortunately, there is already such a member-the m_ThreadObj member
variable. You can only store the thread value in the thread method; you
can't store it in the constructor, which executes on the creating client's
thread. This is exactly what Run() does in this line:

m_ThreadObj = Thread.CurrentThread;

Anonymous   
Printed
Page 326
first word in 2nd line in 2nd paragraph

"assemblyl" NOW READS "assembly"

Anonymous    May 01, 2006
Printed
Page 550
Kinds of Attributes, 1st paragraph

"These go completely unnoticed by .NET, expect that.."

NOW READS:
"These go completely unnoticed by .NET, **except** that.."

Anonymous    May 01, 2006
Printed
Page 565
1st paragraph

First sentence NOW READS:

"Note that it is purely for readability purposes that the list uses the same names as
the node for the generic type parameters."

Anonymous    May 01, 2006
Printed
Page 612
under Properties entry

Entry is

Properties
- interface, 56
- ration of methods to, 76

"ration" should be "ratio"

Anonymous