Overview
Examples
Screenshots
Comparisons
Applications
Download
Documentation
Tutorials
Bazaar
Status & Roadmap
FAQ
Authors & License
Forums
Funding Ultimate++
Search on this site
Search in forums












SourceForge.net Logo
Home » Developing U++ » U++ TheIDE and Library: Releases and ChangeLogs » New Core...
New Core... [message #9031] Fri, 13 April 2007 12:19
mirek is currently offline  mirek
Messages: 13975
Registered: November 2005
Ultimate Member
New Heap, String and MT routines are now in the main tree.

Basically, this is performance update and MT adjustment....

String is now much faster when handling small strings.

MT has much reduced impact on performance (less locking).

CoWork class is a nice way how to use multiple cores.

One caveat though: If you are using other means to start the thread than Thread, you need to call "MemoryFreeThread()" at the end of thread to clean per-thread allocation cache (this is done automagically by Thread).

Mutex is now the preferred new name of "CriticalSection" (shorter Smile and it is now recursive, even on Linux (means same thread can lock it more than once).

Another change - thread memory model is now changed and allows concurrent calls of const methods without serialization (as default). This mostly affects Index class, where lazy hashing thing was removed.

Draw is now interlocked, which means use of Draw package is no longer limited to main threads only. Of course, two threads accessing single Draw object still have to serialize.

At the moment CtrlCore etc... are still reserved for use by the main thread only.

Mirek

P.S.: At the moment, Mingw cannot be uset with MT (lacks TLS variables).
Previous Topic: TheIDE pdb debugger improvements
Next Topic: init_ and GLOBAL_ changes
Goto Forum:
  


Current Time: Sat May 04 00:40:44 CEST 2024

Total time taken to generate the page: 0.02627 seconds