AgsThreadPool

AgsThreadPool — thread pool

Functions

Properties

guint max-threads Read / Write
guint max-unused-threads Read / Write

Signals

Types and Values

Object Hierarchy

    GObject
    ╰── AgsThreadPool

Implemented Interfaces

AgsThreadPool implements AgsConnectable.

Includes

#include <ags/thread/ags_thread_pool.h>

Description

The AgsThreadPool acts as preinstantiated threads store. This can achieve enormeous performance.

Functions

ags_thread_pool_pull ()

AgsThread *
ags_thread_pool_pull (AgsThreadPool *thread_pool);

Pull a previously instantiated AgsReturnableThread. Note this function may block until a new thread is available.

Parameters

thread_pool

the AgsThreadPool

 

Returns

a new AgsThread

Since: 0.4


ags_thread_pool_start ()

void
ags_thread_pool_start (AgsThreadPool *thread_pool);

Start the thread pool.

Parameters

thread_pool

the AgsThreadPool

 

Since: 0.4


ags_thread_pool_new ()

AgsThreadPool *
ags_thread_pool_new (AgsThread *parent);

Create a new AgsThreadPool.

Parameters

parent

the parent AgsThread of returnable threads

 

Returns

the new AgsThreadPool

Since: 0.4

Types and Values

enum AgsThreadPoolFlags

Members

AGS_THREAD_POOL_RUNNING

   

Property Details

The “max-threads” property

  “max-threads”              guint

The maximum of threads to be created.

Flags: Read / Write

Allowed values: [1,65535]

Default value: 1024


The “max-unused-threads” property

  “max-unused-threads”       guint

The maximum of unused threads.

Flags: Read / Write

Allowed values: [1,65535]

Default value: 24

Signal Details

The “start” signal

void
user_function (AgsThreadPool *agsthreadpool,
               gpointer       user_data)

Flags: Run Last