=item *
-Support for the C<CLONE> keyword had been added. With ithreads, when a
-new thread is created, all perl data is cloned, however non perl data
-cannot be cloned. C<CLONE> will be executed once for every package
-that has it defined or inherited. It will be called in the context of
-the new thread, so all modifications are made in the new area.
+Support for the C<CLONE> special subroutine had been added.
+With ithreads, when a new thread is created, all Perl data is cloned,
+however non-Perl data cannot be cloned automatically. In C<CLONE> you
+can do whatever you need to do, like for example handle the cloning of
+non-Perl data, if necessary. C<CLONE> will be executed once for every
+package that has it defined or inherited. It will be called in the
+context of the new thread, so all modifications are made in the new area.
See L<perlmod>
Ithreads work by cloning the data tree so that no data is shared
between different threads. These threads can be used using the threads
-module or by doing fork() on win32 (fake fork() support). When a thread is
-cloned all perl data is cloned, however non perl data cannot be cloned.
-Perl after 5.7.2 has support for the C<CLONE> keyword. C<CLONE> will be
-executed once for every package that has it defined (or inherits it).
-It will be called in the context of the new thread, so all modifications
-are made in the new area.
+module or by doing fork() on win32 (fake fork() support). When a
+thread is cloned all Perl data is cloned, however non-Perl data cannot
+be cloned automatically. Perl after 5.7.2 has support for the
+C<CLONE> keyword. In C<CLONE> you can do whatever you need to do,
+like for example handle the cloning of non-Perl data, if necessary.
+C<CLONE> will be executed once for every package that has it defined
+(or inherits it). It will be called in the context of the new thread,
+so all modifications are made in the new area.
If you want to CLONE all objects you will need to keep track of them per
package. This is simply done using a hash and Scalar::Util::weaken().