X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/ecd5f7562caf1d443bf22788fa5f4fac408776ec..a451588d036aa6addbf51c71bbb670f81acfe319:/doc/doxygen/module-s4u.doc diff --git a/doc/doxygen/module-s4u.doc b/doc/doxygen/module-s4u.doc index abd1c3c833..ac2d360367 100644 --- a/doc/doxygen/module-s4u.doc +++ b/doc/doxygen/module-s4u.doc @@ -1,21 +1,22 @@ /** -@defgroup s4u_api S4U: Next Generation SimGrid API +@defgroup s4u_api S4U: Next generation SimGrid API @brief Future core API, mixing the full power of SimGrid to the power of C++. -The S4U API is currently under heavy work, but will eventually -deprecate the MSG and SimDag APIs. Everything that you can do in -SimGrid will be possible in S4U. +@b TLDR: The best documentation is the @ref s4u_examples -@warning S4U is not as rock stable as the rest of SimGrid yet. - You are really welcome to test it, but be warned that the API - may change without notice between releases. This is however - the way to go if you want to create a new long-term project. - If you want to play safe, proceed to @ref MSG_API instead. +Currently (v3.21), S4U is definitely the way to go for long-term +projects. It is feature complete, but may still evolve slightly in the +future releases. It can already be used to do everything that can be +done in SimGrid, but you may have to adapt your code in future +releases. When this happens, compiling your code will produce +deprecation warnings for 4 releases (one year) before the removal of +the old symbols. +If you want an API that will never ever evolve in the future, proceed +to the deprecated @ref MSG_API instead. -Unsurprisingly, the S4U interface matches the concepts presented in -@ref starting_components "the introduction". You should read this page -first, to not get lost in the amount of classes provided here. Or you -could jump to the \ref s4u_examples directly if you prefer. +The S4U interface matches the concepts presented in @ref +starting_components "the introduction". You should read this page +first, to not get lost in the amount of classes provided here. @section s4u_raii Memory Management of S4U objects @@ -33,7 +34,7 @@ Here is a little example: @code{cpp} void myFunc() { - simgrid::s4u::MutexPtr mutex = simgrid::s4u::Mutex::createMutex(); // Too bad we cannot use `new` here + simgrid::s4u::MutexPtr mutex = simgrid::s4u::Mutex::create(); // Too bad we cannot use `new` here mutex->lock(); // use the mutex as a simple reference // bla bla