-
Notifications
You must be signed in to change notification settings - Fork 791
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[19907] Enable configuration of thread setting for all threads #4013
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@richiprosima please test mac |
1 similar comment
@richiprosima please test mac |
EduPonz
added
the
ready-to-merge
Ready to be merged. CI and changes have been reviewed and approved.
label
Nov 17, 2023
@richiprosima please test this |
@richiprosima please test mac |
* Refs #19375. Added internal header for threading utilities. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19375. Added empty implementation for set_name_to_current_thread. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19375. Added name on Log thread. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19375. Added name on shm watchdog thread. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19375. Added name for filewatch threads. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19375. Added name on ResourceEvent threads. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19375. Added name on udp reception thread. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19375. Added name on shm reception thread. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19375. Added name on data-sharing reception thread. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19375. Added name for TCP threads. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19375. Added name on FlowController thread. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19375. Added name for SHM dump threads. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19375. Added initialization callback to LogTopic. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19375. SecurityManager refactor to receive plugin factory by dependency injection. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19375. Allow easy overload of creation of builtin plugins. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19375. RTPSParticipantImpl configures the logging thread. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19375. Uncrustify. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> --------- Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
* Refs #17492. Added pthread implementation for set_name_to_current_thread Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #17492. Added implementation for Windows. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #17492. Added implementation for Mac. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #17492. Added doxygen to threading.hpp Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #17492. Using pthread implementation for Android. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #17492. Fix build error on snprintf. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> --------- Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
* Refs #19377: Add ThreadSettings struct Signed-off-by: Eduardo Ponz <eduardoponz@eprosima.com> * Refs #19377: Add ThreadSetting to Log API Signed-off-by: Eduardo Ponz <eduardoponz@eprosima.com> * Refs #19377: Add ThreadSetting to DomainParticipantFactoryQos Signed-off-by: Eduardo Ponz <eduardoponz@eprosima.com> * Refs #19377: Add ThreadSetting to DomainParticipantQos Signed-off-by: Eduardo Ponz <eduardoponz@eprosima.com> * Refs #19377: Add ThreadSetting to TransportConfigQos Signed-off-by: Eduardo Ponz <eduardoponz@eprosima.com> * Refs #19377: Add ThreadSetting to TransportDescriptorInterface Signed-off-by: Eduardo Ponz <eduardoponz@eprosima.com> * Refs #19377: Add ThreadSetting to SharedMemTransportDescriptor Signed-off-by: Eduardo Ponz <eduardoponz@eprosima.com> * Refs #19377: Add ThreadSetting to FlowControllerDescriptor Signed-off-by: Eduardo Ponz <eduardoponz@eprosima.com> * Refs #19377: Add ThreadSetting to DataReaderQos Signed-off-by: Eduardo Ponz <eduardoponz@eprosima.com> * Refs #19377: Add ThreadSetting to DomainParticipantQos for builtin flow controllers Signed-off-by: Eduardo Ponz <eduardoponz@eprosima.com> * Refs #19377: Address Miguel's comments in DomainParticipant Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19377: Address Miguel's comments in DataReader Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19377: Address Miguel's comments in ParticipantTests Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19377: Address Miguel's comments in QosConverters Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19377: Address Miguel's comments in Transport descriptors Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19377: Address Miguel's comments in DataReaderTests Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19377: Address Miguel's comments in RTPSParticipantAttibutes Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19377: Address Miguel's comments in PortBasedTransportDescriptor Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19377: Add builtin_controllers_sender_thread to UpdatableDomainParticipantQos Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19377: Refactor PortBasedTransportDescriptor accessors Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19377: Add TCP related thread settings Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19377: Add data_sharing_listener_thread to ReaderAttributes Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19377: Fix windows warning Signed-off-by: EduPonz <eduardoponz@eprosima.com> --------- Signed-off-by: Eduardo Ponz <eduardoponz@eprosima.com> Signed-off-by: EduPonz <eduardoponz@eprosima.com>
* Refs #19436. Added thread creation wrapper infrastructure. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Added empty implementation for apply_thread_settings_to_current_thread. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Refactor on Log.cpp Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Add implementation for setting scheduler and priority. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Add implementation for setting cpu affinity. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Add test setting config for Log thread. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Fix SystemInfoTests link issue. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Changes on ResourceEvent. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Changes on DataSharingListener. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Changes on FlowControllerImpl. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Changes on security LogTopic. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Apply settings on SharedMemWatchdog. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Apply settings on SharedMem reception threads. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Apply settings on SharedMem packet dump threads. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Apply settings on UDP reception threads. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Apply settings on TCP accept and keep_alive threads. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Apply settings on TCP reception threads. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Include what you use. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Add MacOS implementation for setting scheduler and priority. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Add MacOS implementation for setting thread affinity. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19437. Member cpu_mask changed to affinity and made it 64 bits. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19437. Windows implementation for thread affinity. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19437. Windows implementation for thread priority. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Made `get_thread_config_for_port` a const method. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Apply suggestions from code review. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> Co-authored-by: Eduardo Ponz Segrelles <eduardoponz@eprosima.com> * Refs #19435. Some refactors on FileWatch: - Namespace moved to eprosima::filewatch - Constructor receives thread settings - Copy constructors deleted Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19435. SystemInfo::watch_file receives thread settings. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19435. Added RTPSDomain::set_filewatch_thread_config Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19435. Call RTPSDomain::set_filewatch_thread_config inside DomainParticipantFactory::create_participant Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19435. Change priority default value. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19435. Account for default values in threading_pthread Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19435. Account for default values in threading_osx Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19435. Account for default values in threading_win32 Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19435. Linters. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19435. Use C++ headers. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19435. Documentation updates. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19435. Suggestions on Log test. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19435. Removed unused overload of create_thread. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> --------- Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> Co-authored-by: Eduardo Ponz Segrelles <eduardoponz@eprosima.com>
* Refs #19378: Add threadSettingsTypes to XSD schema Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add unit test for parsing thread_settings XML elements Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add getXMLThreadSettings to XMLElementParser Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add Log test cases to XMLProfileParserBasicTests.thread_settings_qos test Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add XML ThreadSettings config to Log Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add domainparticipant_factory XML tag tests Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add domainparticipant_factory XSD Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add XML ThreadSettings config to DomainParticipantFactory Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add getXMLEntityFactoryQos unit test Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add domainparticipant XML thread settings tests Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add XML ThreadSettings config to DomainParticipant Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Uncrustify Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add parseXMLReceptionThreads API & unit test Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add transport descriptor XML thread settings tests Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add parseXMLReceptionThreads implementation Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add transport descriptor XML thread settings config Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add datareader XML thread settings tests Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add datareader XML thread settings Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add builtin_transports_reception_threads to domainparticipant XML test Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add builtin_transports_reception_threads to domainparticipant XML Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Fix Windows warning regarding sscanf Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Fix flow controllers unittests build when using Fast CDR as thirdparty Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Apply Miguel's suggestions Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Apply some other suggestions Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378. OSx has neither `SCHED_BATCH` nor `SCHED_IDLE` Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19378. Check result on pthread_setschedparam Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19378. Add include on `threading_osx.ipp` Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19378. Avoid using gettid on `threading_osx.ipp` Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19378: Fix mac warning Signed-off-by: EduPonz <eduardoponz@eprosima.com> --------- Signed-off-by: EduPonz <eduardoponz@eprosima.com> Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> Co-authored-by: Miguel Company <MiguelCompany@eprosima.com>
Signed-off-by: EduPonz <eduardoponz@eprosima.com>
* Refs #19378: Set DomainParticipantFactoryQos when loading profiles Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Parse missing TCPTransportDescriptor XML elements Signed-off-by: EduPonz <eduardoponz@eprosima.com> --------- Signed-off-by: EduPonz <eduardoponz@eprosima.com>
* Refs #19797. Initial refactor. eprosima::thread inherits from std::thread. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Update code in ResourceEvent. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Using eprosima::thread instead of std::thread. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Include `<thread>` where `std::this_thread` is used. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Copy basic eprosima::thread implementation into ipp files. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Select ipp file depending on platform. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Copy windows implementation on `thread_impl_win32.ipp` Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Added `is_calling_thread method`. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Using `is_calling_thread` instead of comparing ids. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Using stack size argument. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Update test. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Implementation for pthread based platforms. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Use pthread based implementation on Mac. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Change windows implementation approach. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Factor out common code. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Linter Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Use local `swap` method. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Pass 0 value to `pthread_attr_setstacksize`. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Linter Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Improve include what you use. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Add missing includes Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19797. Fix thread settings on dds unit test xml profiles. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> --------- Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> Signed-off-by: EduPonz <eduardoponz@eprosima.com> Co-authored-by: EduPonz <eduardoponz@eprosima.com>
Signed-off-by: EduPonz <eduardoponz@eprosima.com>
EduPonz
force-pushed
the
feature/thread-config/main
branch
from
November 20, 2023 15:28
3dfae80
to
8dd9908
Compare
@richiprosima please test this |
MiguelCompany
approved these changes
Nov 21, 2023
adriancampo
pushed a commit
that referenced
this pull request
Nov 27, 2023
* Setting infraestructure for naming threads (#3821) * Refs #19375. Added internal header for threading utilities. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19375. Added empty implementation for set_name_to_current_thread. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19375. Added name on Log thread. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19375. Added name on shm watchdog thread. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19375. Added name for filewatch threads. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19375. Added name on ResourceEvent threads. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19375. Added name on udp reception thread. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19375. Added name on shm reception thread. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19375. Added name on data-sharing reception thread. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19375. Added name for TCP threads. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19375. Added name on FlowController thread. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19375. Added name for SHM dump threads. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19375. Added initialization callback to LogTopic. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19375. SecurityManager refactor to receive plugin factory by dependency injection. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19375. Allow easy overload of creation of builtin plugins. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19375. RTPSParticipantImpl configures the logging thread. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19375. Uncrustify. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> --------- Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Platform implementations for set_name_to_current_thread (#3823) * Refs #17492. Added pthread implementation for set_name_to_current_thread Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #17492. Added implementation for Windows. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #17492. Added implementation for Mac. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #17492. Added doxygen to threading.hpp Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #17492. Using pthread implementation for Android. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #17492. Fix build error on snprintf. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> --------- Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Add ThreadSettings to Qos (#3848) * Refs #19377: Add ThreadSettings struct Signed-off-by: Eduardo Ponz <eduardoponz@eprosima.com> * Refs #19377: Add ThreadSetting to Log API Signed-off-by: Eduardo Ponz <eduardoponz@eprosima.com> * Refs #19377: Add ThreadSetting to DomainParticipantFactoryQos Signed-off-by: Eduardo Ponz <eduardoponz@eprosima.com> * Refs #19377: Add ThreadSetting to DomainParticipantQos Signed-off-by: Eduardo Ponz <eduardoponz@eprosima.com> * Refs #19377: Add ThreadSetting to TransportConfigQos Signed-off-by: Eduardo Ponz <eduardoponz@eprosima.com> * Refs #19377: Add ThreadSetting to TransportDescriptorInterface Signed-off-by: Eduardo Ponz <eduardoponz@eprosima.com> * Refs #19377: Add ThreadSetting to SharedMemTransportDescriptor Signed-off-by: Eduardo Ponz <eduardoponz@eprosima.com> * Refs #19377: Add ThreadSetting to FlowControllerDescriptor Signed-off-by: Eduardo Ponz <eduardoponz@eprosima.com> * Refs #19377: Add ThreadSetting to DataReaderQos Signed-off-by: Eduardo Ponz <eduardoponz@eprosima.com> * Refs #19377: Add ThreadSetting to DomainParticipantQos for builtin flow controllers Signed-off-by: Eduardo Ponz <eduardoponz@eprosima.com> * Refs #19377: Address Miguel's comments in DomainParticipant Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19377: Address Miguel's comments in DataReader Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19377: Address Miguel's comments in ParticipantTests Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19377: Address Miguel's comments in QosConverters Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19377: Address Miguel's comments in Transport descriptors Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19377: Address Miguel's comments in DataReaderTests Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19377: Address Miguel's comments in RTPSParticipantAttibutes Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19377: Address Miguel's comments in PortBasedTransportDescriptor Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19377: Add builtin_controllers_sender_thread to UpdatableDomainParticipantQos Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19377: Refactor PortBasedTransportDescriptor accessors Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19377: Add TCP related thread settings Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19377: Add data_sharing_listener_thread to ReaderAttributes Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19377: Fix windows warning Signed-off-by: EduPonz <eduardoponz@eprosima.com> --------- Signed-off-by: Eduardo Ponz <eduardoponz@eprosima.com> Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Apply thread settings (#3874) * Refs #19436. Added thread creation wrapper infrastructure. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Added empty implementation for apply_thread_settings_to_current_thread. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Refactor on Log.cpp Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Add implementation for setting scheduler and priority. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Add implementation for setting cpu affinity. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Add test setting config for Log thread. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Fix SystemInfoTests link issue. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Changes on ResourceEvent. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Changes on DataSharingListener. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Changes on FlowControllerImpl. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Changes on security LogTopic. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Apply settings on SharedMemWatchdog. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Apply settings on SharedMem reception threads. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Apply settings on SharedMem packet dump threads. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Apply settings on UDP reception threads. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Apply settings on TCP accept and keep_alive threads. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Apply settings on TCP reception threads. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Include what you use. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Add MacOS implementation for setting scheduler and priority. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Add MacOS implementation for setting thread affinity. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19437. Member cpu_mask changed to affinity and made it 64 bits. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19437. Windows implementation for thread affinity. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19437. Windows implementation for thread priority. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Made `get_thread_config_for_port` a const method. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19436. Apply suggestions from code review. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> Co-authored-by: Eduardo Ponz Segrelles <eduardoponz@eprosima.com> * Refs #19435. Some refactors on FileWatch: - Namespace moved to eprosima::filewatch - Constructor receives thread settings - Copy constructors deleted Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19435. SystemInfo::watch_file receives thread settings. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19435. Added RTPSDomain::set_filewatch_thread_config Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19435. Call RTPSDomain::set_filewatch_thread_config inside DomainParticipantFactory::create_participant Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19435. Change priority default value. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19435. Account for default values in threading_pthread Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19435. Account for default values in threading_osx Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19435. Account for default values in threading_win32 Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19435. Linters. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19435. Use C++ headers. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19435. Documentation updates. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19435. Suggestions on Log test. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19435. Removed unused overload of create_thread. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> --------- Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> Co-authored-by: Eduardo Ponz Segrelles <eduardoponz@eprosima.com> * Add XML support for ThreadSettings (#3922) * Refs #19378: Add threadSettingsTypes to XSD schema Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add unit test for parsing thread_settings XML elements Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add getXMLThreadSettings to XMLElementParser Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add Log test cases to XMLProfileParserBasicTests.thread_settings_qos test Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add XML ThreadSettings config to Log Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add domainparticipant_factory XML tag tests Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add domainparticipant_factory XSD Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add XML ThreadSettings config to DomainParticipantFactory Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add getXMLEntityFactoryQos unit test Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add domainparticipant XML thread settings tests Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add XML ThreadSettings config to DomainParticipant Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Uncrustify Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add parseXMLReceptionThreads API & unit test Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add transport descriptor XML thread settings tests Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add parseXMLReceptionThreads implementation Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add transport descriptor XML thread settings config Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add datareader XML thread settings tests Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add datareader XML thread settings Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add builtin_transports_reception_threads to domainparticipant XML test Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Add builtin_transports_reception_threads to domainparticipant XML Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Fix Windows warning regarding sscanf Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Fix flow controllers unittests build when using Fast CDR as thirdparty Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Apply Miguel's suggestions Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Apply some other suggestions Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378. OSx has neither `SCHED_BATCH` nor `SCHED_IDLE` Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19378. Check result on pthread_setschedparam Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19378. Add include on `threading_osx.ipp` Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19378. Avoid using gettid on `threading_osx.ipp` Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19378: Fix mac warning Signed-off-by: EduPonz <eduardoponz@eprosima.com> --------- Signed-off-by: EduPonz <eduardoponz@eprosima.com> Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> Co-authored-by: Miguel Company <MiguelCompany@eprosima.com> * Fix doxygen (#3987) Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Parse missing TCPTransportDescriptor XML elements (#4001) * Refs #19378: Set DomainParticipantFactoryQos when loading profiles Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19378: Parse missing TCPTransportDescriptor XML elements Signed-off-by: EduPonz <eduardoponz@eprosima.com> --------- Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Custom eprosima::thread class that allows setting the stack size (#4000) * Refs #19797. Initial refactor. eprosima::thread inherits from std::thread. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Update code in ResourceEvent. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Using eprosima::thread instead of std::thread. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Include `<thread>` where `std::this_thread` is used. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Copy basic eprosima::thread implementation into ipp files. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Select ipp file depending on platform. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Copy windows implementation on `thread_impl_win32.ipp` Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Added `is_calling_thread method`. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Using `is_calling_thread` instead of comparing ids. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Using stack size argument. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Update test. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Implementation for pthread based platforms. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Use pthread based implementation on Mac. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Change windows implementation approach. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Factor out common code. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Linter Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Use local `swap` method. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Pass 0 value to `pthread_attr_setstacksize`. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Linter Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Improve include what you use. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs #19797. Add missing includes Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #19797. Fix thread settings on dds unit test xml profiles. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> --------- Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> Signed-off-by: EduPonz <eduardoponz@eprosima.com> Co-authored-by: EduPonz <eduardoponz@eprosima.com> * Refs #19907: Add feature to versions.md Signed-off-by: EduPonz <eduardoponz@eprosima.com> --------- Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> Signed-off-by: Eduardo Ponz <eduardoponz@eprosima.com> Signed-off-by: EduPonz <eduardoponz@eprosima.com> Co-authored-by: Miguel Company <miguelcompany@eprosima.com> Signed-off-by: adriancampo <adriancampo@eprosima.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
This PR adds the possibility to configure various thread settings for all Fast DDS threads, both through the C++ API, and also using XML configuration files.
Those settings are:
Contributor Checklist
versions.md
file (if applicable).Reviewer Checklist