office-gobmx/vcl/CppunitTest_vcl_timer.mk
Jan-Marek Glogowski 6e13585508 Add a TaskStopwatch to interrupt idle loops
If we have multiple pending Idles, they will interrupt / starve
each other, because there will be an instant pending timeout for
the next Idle.

This patch introduces a time slice to tasks, so long running events
can use a TaskStopwatch to do the real interrupt after running out
of their time slice. Apart from the time, this breaks when AnyInput
is available, except for the timer event.

This class just helps to track the time, as the scheduler is coop,
not preemptive.

Change-Id: I9d0b4a5aa388ebdf496b355d100152d890224524
Reviewed-on: https://gerrit.libreoffice.org/75568
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2019-08-13 16:53:07 +02:00

48 lines
1.1 KiB
Makefile

# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#
# This file is part of the LibreOffice project.
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
$(eval $(call gb_CppunitTest_CppunitTest,vcl_timer))
$(eval $(call gb_CppunitTest_set_include,vcl_timer,\
$$(INCLUDE) \
-I$(SRCDIR)/vcl/inc \
))
$(eval $(call gb_CppunitTest_add_exception_objects,vcl_timer, \
vcl/qa/cppunit/timer \
))
$(eval $(call gb_CppunitTest_use_externals,vcl_timer,boost_headers))
$(eval $(call gb_CppunitTest_use_libraries,vcl_timer, \
comphelper \
cppu \
cppuhelper \
sal \
salhelper \
test \
tl \
unotest \
vcl \
))
$(eval $(call gb_CppunitTest_use_sdk_api,vcl_timer))
$(eval $(call gb_CppunitTest_use_ure,vcl_timer))
$(eval $(call gb_CppunitTest_use_vcl,vcl_timer))
$(eval $(call gb_CppunitTest_use_components,vcl_timer,\
configmgr/source/configmgr \
i18npool/util/i18npool \
ucb/source/core/ucb1 \
))
$(eval $(call gb_CppunitTest_use_configuration,vcl_timer))
# vim: set noet sw=4 ts=4: