ThreadWeaver

Last updated
ThreadWeaver
Original author(s) Mirko Boehm
Developer(s) Mirko Boehm
Stable release
5.104.0 [1]   OOjs UI icon edit-ltr-progressive.svg / 11 March 2023;14 days ago (11 March 2023)
Operating system Linux, other Unix and Unix-like systems, Windows
Type System library multithreaded library
License LGPL
Website api.kde.org/frameworks-api/frameworks5-apidocs/threadweaver/html/index.html

ThreadWeaver is a system library initially developed for KDE Software Compilation 4 [2] and later refactored for KDE Frameworks 5. [3]

ThreadWeaver allows developers to easily take advantage of multi-core processors and multithreading. In ThreadWeaver the workload is divided into individual jobs, then relationship between jobs (what order they should be completed or which has a higher priority); from that ThreadWeaver will work out the most efficient way to execute them. Krita has implemented visual filter previews using ThreadWeaver to prevent GUI lockups.

Related Research Articles

<span class="mw-page-title-main">KDE</span> Free software community

KDE is an international free software community that develops free and open-source software. As a central development hub, it provides tools and resources that allow collaborative work on this kind of software. Well-known products include the Plasma Desktop, KDE Frameworks, and a range of cross-platform applications such as Amarok, digiKam, and Krita that are designed to run on Unix and Unix-like operating systems, Microsoft Windows, and Android.

<span class="mw-page-title-main">Qt (software)</span> Object-oriented framework for software development

Qt is cross-platform software for creating graphical user interfaces as well as cross-platform applications that run on various software and hardware platforms such as Linux, Windows, macOS, Android or embedded systems with little or no change in the underlying codebase while still being a native application with native capabilities and speed.

The Qt Company Finnish software company

The Qt Company is a software company based in Espoo, Finland. It oversees the development of its Qt application framework within the Qt Project. It was formed following the acquisition of Qt by Digia, but was later spun off into a separate, publicly traded company.

Boost is a set of libraries for the C++ programming language that provides support for tasks and structures such as linear algebra, pseudorandom number generation, multithreading, image processing, regular expressions, and unit testing. It contains 164 individual libraries.

<span class="mw-page-title-main">Kate (text editor)</span> Text editor

The KDE Advanced Text Editor, or Kate, is a source code editor developed by the KDE free software community. It has been a part of KDE Software Compilation since version 2.2, which was first released in 2001. Intended for software developers, it features syntax highlighting, code folding, customizable layouts, regular expression support, and extensibility. The text editor's mascot is Kate the Cyber Woodpecker.

digiKam Free image organizer

digiKam is a free and open-source image organizer and tag editor written in C++ using the KDE Frameworks.

<span class="mw-page-title-main">KDE Software Compilation 4</span> Software

KDE Software Compilation 4 was the only series of the so-called KDE Software Compilation, first released in January 2008 and the last release being 4.14.3 released in November 2014. It was the follow-up to K Desktop Environment 3. Following KDE SC 4, the compilation was broken up into basic framework libraries, desktop environment and applications, which are termed KDE Frameworks 5, KDE Plasma 5 and KDE Applications, respectively.

<span class="mw-page-title-main">KDE Platform 4</span> Collection of software libraries and frameworks

KDE Platform 4 was a collection of libraries and software frameworks by KDE that served as technological foundation for KDE Software Compilation 4 distributed under the GNU Lesser General Public License (LGPL). KDE Platform 4 was the successor to KDElibs and the predecessor of KDE Frameworks. KDE Platform 4 is the only version of KDE Platform, and in 2013 it was replaced by KDE Frameworks 5.

A desktop environment is a collection of software designed to give functionality and a certain look and feel to an operating system.

Kross is a scripting framework for KDE Frameworks. Originally Kross was designed for use in KOffice but eventually became the official scripting framework in KDE Software Compilation 4. Kross is designed to provide full scripting power for users of KDE applications, with a language of their own choice; and make it easy for developers targeting the KDE platform to enable their application with support for multiple scripting languages.

<span class="mw-page-title-main">Dolphin (file manager)</span> File manager for KDE desktop environment

Dolphin is a free and open source file manager included in the KDE Applications bundle. Dolphin became the default file manager of the KDE Plasma desktop environments in the fourth iteration, termed KDE Software Compilation 4. It can also be optionally installed on K Desktop Environment 3. It replaces Konqueror as the default file manager for KDE SC 4, but Konqueror can still be used as an alternative file manager.

<span class="mw-page-title-main">Kdenlive</span> Free and open-source video editing software

Kdenlive is a free and open-source video editing software based on the MLT Framework, KDE and Qt. The project was started by Jason Wood in 2002, and is now maintained by a small team of developers.

Sonnet is a multilingual spell checker program in KDE Frameworks 5 and KDE Software Compilation 4. Sonnet replaced kspell2 that was created for KDE3. The two main goals for Sonnet's development were a simpler API, wider language support and performance. Notable improvements in Sonnet over kspell2 are

<span class="mw-page-title-main">Okular</span> Document viewer by KDE

Okular is a multiplatform document viewer developed by the KDE community and based on Qt and KDE Frameworks libraries. It is distributed as part of the KDE Applications bundle. Its origins are from KPDF and it replaces KPDF, KGhostView, KFax, KFaxview and KDVI in KDE 4. Its functionality can be embedded in other applications.

<span class="mw-page-title-main">KDE Software Compilation</span> Desktop environment and an associated range of KDE Applications produced by KDE

The KDE Software Compilation was an umbrella term for the desktop environment plus a range of included applications produced by KDE. From its 1.0 release in July 1998 until the release of version 4.4 in February 2010, the Software Compilation was simply known as KDE, which stood for K Desktop Environment until the rebrand. The then called KDE SC was used from 4.4 onward until the final release 4.14 in July 2014. It consisted of the KDE Plasma 4 desktop and those KDE applications, whose development teams chose to follow the Software Compilation's release schedule. After that, the KDE SC was split into three separate product entities: KDE Plasma, KDE Frameworks and KDE Applications, each with their own independent release schedules.

KJS is KDE's ECMAScript-JavaScript engine that was originally developed for the KDE project's Konqueror web browser by Harri Porten in 2000.

<span class="mw-page-title-main">KDE Frameworks</span> Collection of libraries and software frameworks for the Qt framework

KDE Frameworks is a collection of libraries and software frameworks readily available to any Qt-based software stacks or applications on multiple operating systems. Featuring frequently needed functionality solutions like hardware integration, file format support, additional graphical control elements, plotting functions, and spell checking, the collection serves as technological foundation for KDE Plasma 5 and KDE Gear distributed under the GNU Lesser General Public License (LGPL).

<span class="mw-page-title-main">KDE Plasma 5</span> Desktop environment

KDE Plasma 5 is the fifth and current generation of the graphical workspaces environment created by KDE primarily for Linux systems. KDE Plasma 5 is the successor of KDE Plasma 4 and was first released on 15 July 2014.

<span class="mw-page-title-main">KDE Gear</span> Set of applications and supporting libraries

The KDE Gear is a set of applications and supporting libraries that are developed by the KDE community, primarily used on Linux-based operating systems but mostly multiplatform, and released on a common release schedule.

<span class="mw-page-title-main">KDE Projects</span>

KDE Projects are projects maintained by the KDE community, a group of people developing and advocating free software for everyday use, for example KDE Plasma and KDE Frameworks or applications such as Amarok, Krita or Digikam. There are also non-coding projects like designing the Breeze desktop theme and iconset, which is coordinated by KDE's Visual Design Group. Even non-Qt applications like GCompris, which started as a GTK-based application, or web-based projects like WikiToLearn are officially part of KDE.

References

  1. "KDE Frameworks 5.104.0". 11 March 2023. Retrieved 14 March 2023.
  2. "kdelibs API Reference". Archived from the original on 2011-01-23. Retrieved 2017-01-02.
  3. "ThreadWeaver in KDE Frameworks 5". 15 July 2013. Retrieved 2015-05-13.

Further reading