multithreading libraries, new auto functiontrace and minor corrections
This commit is contained in:
@@ -39,22 +39,30 @@
|
||||
|
||||
See the <a href="pages.html">"Related Pages"</a>.
|
||||
|
||||
- @ref readme "The Readme, a Short Overview"
|
||||
- @ref download "Download, Dependencies and Simple Installation"
|
||||
- @ref usage "Usage of the Library: Include and Link"
|
||||
- @ref threads "Thread Safety"
|
||||
- @ref libversion "Library Versioning"
|
||||
- @ref license "License Information (LGPL)"
|
||||
- @ref install "Detailed Compilation and Installation Information"
|
||||
- @ref news "Breaking News, What's New?"
|
||||
- @ref changes "Change Log"
|
||||
- @ref readme
|
||||
- @ref download
|
||||
- @ref usage
|
||||
- @ref threads
|
||||
- @ref libversion
|
||||
- @ref license
|
||||
- @ref install
|
||||
- @ref news
|
||||
- @ref changes
|
||||
*/
|
||||
|
||||
/** @page download Download, Detailed und Simple Installation
|
||||
/** @page download Download and Installation
|
||||
|
||||
Download this version from here:
|
||||
- Requirements:
|
||||
- No special requirements for the binary package!
|
||||
- Boost thread library for multi threading:
|
||||
http://boost.org
|
||||
- log4cxx for automated tracing and function traces:
|
||||
- http://logging.apache.org/log4cxx
|
||||
- RPM: http://marc.waeckerlin.org/mrw-c++/log4cxx-0.9.7-1.i386.rpm
|
||||
- @ref mrw::StackTrace requires:
|
||||
- the GNU Binutils
|
||||
- either GNU Compiler gcc or GNU C library glibc
|
||||
- runs better on: either Linux or Solaris
|
||||
- Binary
|
||||
- Binary RPM Packages (built on i586/SuSE):
|
||||
- http://marc.waeckerlin.org/@PACKAGENAME@/@PACKAGENAME@-@MAJOR@.@MINOR@.@LEAST@-1.i586.rpm
|
||||
@@ -65,6 +73,7 @@
|
||||
<code>rpm -Uvh @PACKAGENAME@-devel-@MAJOR@.@MINOR@.@LEAST@-1.i586.rpm</code>
|
||||
- Source
|
||||
- Requirements to build from source:
|
||||
- boost: http://boost.org
|
||||
- cppunit: http://cppunit.sf.net
|
||||
- log4cxx: http://logging.apache.org/log4cxx
|
||||
- doxygen: http://doxygen.org
|
||||
@@ -93,27 +102,49 @@
|
||||
#include <mrw/stacktrace.hpp>
|
||||
@endverbatim
|
||||
|
||||
All classes are in the mrw namespace.
|
||||
All classes are in the @c mrw namespace.
|
||||
|
||||
if you want the mrw::StackTrace to evaluate file and line numbers,
|
||||
then you need to compile with debug information enabled, thats
|
||||
option @c -g.
|
||||
|
||||
Link to the library with option @c -lmrw, e.g.:
|
||||
Link to the library with option @c -lmrw (or @c -lmrw-mt if your
|
||||
program is multi threaded), e.g.:
|
||||
|
||||
@verbatim
|
||||
g++ -g -o myprogram myprogram.cpp -lmrw
|
||||
@endverbatim
|
||||
|
||||
For the @ref AutoTools "unexpected handler" you need to link with
|
||||
@c -lmrwexcstderr or @c -lmrwexclog4cxx.
|
||||
*/
|
||||
For the @ref AutoTools "unexpected handler" you need to link to
|
||||
@c -lmrwexcstderr or @c -lmrwexclog4cxx (or @c -lmrwexcstderr-mt
|
||||
or @c -lmrwexclog4cxx-mt if your program is multi threaded).
|
||||
|
||||
For the @ref AutoFunctionTrace "automated function trace" you need
|
||||
to link to @c -lmrwautofunctiontracelog4cxx (or @c
|
||||
-lmrwautofunctiontracelog4cxx-mt if your program is multi
|
||||
threaded). In addition, you must compile and link your program
|
||||
with the GNU compiler specific option @c -finstrument-functions */
|
||||
|
||||
/** @page threads Thread Safety
|
||||
|
||||
To enable thread safety, you must link to @c libmrw-mt instead of
|
||||
@c libmrw. That means, your link option is: @c -lmrw-mt
|
||||
|
||||
Different instances of classes can run in different threads, but
|
||||
instances of classes can not be shared between different threads.
|
||||
|
||||
All classes are not thread safe, that means they should either
|
||||
always be accessed from the same thread, or you are responsible
|
||||
for locking. If you need thread safety as a feature, please send
|
||||
for locking.
|
||||
|
||||
All methods are threads safe, that means, they can be called at
|
||||
the same time from different threads. But not on the same object.
|
||||
|
||||
This means: One instance should only be used within one single
|
||||
thread. Different instances of the same class can be accessed
|
||||
simultaneousely in different threads.
|
||||
|
||||
If you need more thread safety as a feature, please send
|
||||
me an email and ask me for it (you find the address in the package
|
||||
or on my personal homepage: http://marc.waeckerlin.org).
|
||||
*/
|
||||
|
Reference in New Issue
Block a user