summaryrefslogtreecommitdiff
path: root/test/threads.cxx
AgeCommit message (Collapse)Author
2 dayswipmaxim nikonov
2025-11-21Fix a few more warnings by Clang.Matthias Melcher
- Apple Clang 17.0.0. - png, z, jpeg lib integer cast warnings remain - FLTK callback function cast warnings remain.
2025-07-14Improve test/threads demo programAlbrecht Schlosser
- format "Max Prime" output as integer number - use a fixed font for better readability - close all windows when the user closes one of them - use standard background and text colors
2025-06-22Improve threads demo test/threads.cxx (#1263)Albrecht Schlosser
- Replace Fl_Browser with Fl_Terminal which uses a constant buffer size - Don't lock the GUI for every single prime. Collect primes for at least 0.25 seconds before calling Fl::awake(handler, buffer) - Use (two) alternate buffers for collecting prime data. - Use Fl::lock() *only* to protect thread data at initialization time. Observation on Debian 12, CPU: 12-core, 12th Gen Intel Core i7-1260P: speedup > factor 4, using multiple cores, GUI fully functional: scrolling the display, resizing, ... Tested natively (X11 + Wayland) and cross-compiled for Windows, using `wine`.
2025-06-19Update Fl::await() and friends API and documentationMatthias Melcher
This creates the base for #1263, but does not fix it yet.
2022-09-26Replace all calls to sprintf() by calls to snprintf().ManoloFLTK
2020-07-06Remove $Id$ tags, update URL's, and moreAlbrecht Schlosser
- remove obsolete svn '$Id$' tags from all source files - update .fl files and generated files accordingly - replace 'http://www.fltk.org' URL's with 'https://...' - replace bug report URL 'str.php' with 'bugs.php' - remove trailing whitespace - fix other whitespace errors flagged by Git - add and/or fix missing or wrong standard headers - convert tabs to spaces in all source files The only relevant code changes are in the fluid/ folder where some .fl files and other source files were used to generate the '$Id' headers and footers.
2018-02-09Replace "WIN32" with "_WIN32" or "Windows".Albrecht Schlosser
Replace compiler/preprocessor/platform macro "WIN32" with "_WIN32". Replace "WIN32" in text and documentation with "Windows". Replace "MSWindows" with "Windows". To do: README.Windows.txt (and maybe other documentation as well) needs updates. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12655 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-31Fix compiler warnings (STR 2988), porting from branch-1.3.Albrecht Schlosser
This commit is the accumulated patch introduced in branch 1.3 in svn r 11094, 11095, and 11096. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11097 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-09-21Fixes STR# 2973: collection of Sun compiler fixes.Greg Ercolano
Applied str_2973_r9979_sun-fix-warnings-7.patch (with small mods) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9980 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-07-19Modifications to all LGPL headers for STR #2685.Greg Ercolano
(to clarify static exception LGPL by changing license references) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8864 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-12-15Changed all #include "config.h" to #include <config.h>.Albrecht Schlosser
This is necessary for out-of-source builds (e.g. CMake) to work correctly. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8033 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-11-28Fixed Copyright to 2010.Matthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7903 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-04-21Most test demos converted to use Fl_Double_Window Greg Ercolano
to prevent flicker when new users run test/demo programs. For details, see fltk.development thread started 04/16/09, "Subject: browser demo flicker". git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6772 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-01-01Cahngad copyrights in 'test'Matthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6615 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-09-16Doxygen documentation : took the opportunity to update copyright info as we ↵Fabien Costantini
modified already in batch almost all sources, added also a fil doxygen command to class headers to harmonize with original matt Fl_Widget dox. format. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6265 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-05-20On OS X: disable all 'deprecated' warnings to be able to see the really ↵Matthias Melcher
important warnings. Nevertheless, we will have to replace all Carbon calls as soon as possible. Also re-fixed (i hope) the 'return' from an endless loop in 'threads.cxx' git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5849 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-05-20Rats, Sun's compilers error out if there is no return statement in theMichael R Sweet
thread function, so we'll have to just live with the "statement unreachable" warning... git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5847 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-05-20Fix all compiler warnings from various build systems.Michael R Sweet
Fix vsnprintf() implementation to properly handle long and long long ints. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5845 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-03-20Removed the Fl::set_awake_cb API and documented the Fl::awake(function, ↵Matthias Melcher
data) API. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5749 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-03-09Fix include name...Michael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5735 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-03-06This is a suggested change. It is complete except for documentation.Matthias Melcher
I did not like the awake_cb system at all. These changes implement Fl::awake(Fl_Awake_Handler, void*) which is called from a thread and tells the main loop to call the specified handler (rather a callback I guess) as soon as possible from within the main thread. It is implemented as Fifo (currently 1024 entry ring buffer), so handlers are called in the order that they are generated in. "test/threads" was modified to change the label color as soon as a thread reaches 10000 - pretty boring, but it show the wonderful simplicity of this approach: you can write libraries that don't need to add to the main loop or register a handler at all... . I will do some more stress testing tonight. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5729 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-02-12Clean up threads example, use new set_awake_cb().Michael R Sweet
Update chapter 10 of the documentation to provide cleaner examples. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5691 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-01-15More copyright updates.Michael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4748 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-01-06The threads demo would display negative prime numbersMichael R Sweet
on MacOS X; this appears to be a MacOS X bug, but we added a workaround to "fix" this (STR #1138) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4740 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-04-16Update source file headers with STR web page.Michael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4288 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-04-16Update "clean" targets to properly handle core files, remove backup files,Michael R Sweet
etc. Add "install" target to test directory which installs the example programs. Install the config.h file in the examples directory. Make sure the example programs compile outside the FLTK source dir. Add example programs to fltk.list.in. Fix missing redraw() in x_cb() in FLUID... git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4287 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-02-24Copyright updates.Michael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4052 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2004-04-11Copyright updates and prep for 1.1.5rc1.Michael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3391 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2004-04-07VC++.NET supportMichael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3378 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2003-01-30Copyright update for 1.1.3 release (not quite yet, but soon...)Michael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2936 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2002-01-01Copyright updates...Michael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@1903 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2001-12-23Demo updates (so they all will use the default scheme)Michael R Sweet
Added show(argc, argv) method to Fl_Help_Dialog. Don't clear tab area in Fl_Tabs... git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@1896 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2001-12-08Fix threading test.Michael R Sweet
Add threading demo from 2.0, with minor improvements to make the prime number generation faster/more realistic. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@1823 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2001-08-01This commit was manufactured by cvs2svn to create branch 'branch-1.1'.No Author
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@1513 ea41ed52-d2ee-0310-a9c1-e6b18d33e121