Baigudin Software avatar
Baigudin Software logo
home
ru region
en region

Class «core::Synchronizer»

One program synchronization for executing in several processor units.

This class provides a synchronization of one program which is being executed by several processor units.

public: Synchronizer();

Constructor.

public: virtual ~Synchronizer();

Destructor.

public: virtual bool isConstructed() const;

Tests if this object has been constructed.

Returns:
true if object has been constructed successfully.

public: virtual bool isEqual(void* ptr, int32 size, int32 channel);

Tests if given data equals the gauge.

Parameters:
ptr — address of data for synchronizing.
size — number of bytes for synchronizing.
channel — number of processor core which data is the gauge of synchronization.

Returns:
true if given data equals to the gauge.

public: static bool isObject(const Type* obj);

Tests if given object has been constructed object.

Parameters:
obj — pointer to object.

Returns:
true if object has been constructed successfully.

public: void operator delete(void* ptr);

Operator delete.

Parameters:
ptr — address of allocated memory block or a null pointer.

public: void* operator new(size_t size);

Operator new.

Parameters:
size — number of bytes to allocate.

Returns:
allocated memory address or a null pointer.

public: void* operator new(size_t size, void* ptr);

Operator new.

Parameters:
size — unused.
ptr — pointer to reserved memory area

Returns:
given pointer.

public: virtual bool recast(void* ptr, int32 size, int32 channel);

Recasts given data to a gauge.

The method compares given data with a gauge and recasts to it if the data does not equal to the gauge.

Parameters:
ptr — address of data for synchronizing.
size — number of bytes for synchronizing.
channel — number of processor core which data is the gauge of synchronization.

Returns:
true if given data was recast to the gauge.

public: virtual void synchronize();

Synchronizes an executing code section.

The method waits while other processor units get this program pointer and continues executing the program after this.

protected: static Type alloc(size_t size);

Allocates memory.

Parameters:
size — number of bytes to allocate.

Returns:
allocated memory address or a null pointer.

protected: static void free(void* ptr);

Frees an allocated memory.

Parameters:
ptr — address of allocated memory block or a null pointer.

protected: virtual void setConstruct(bool flag);

Sets the object constructed flag.

Parameters:
flag — constructed flag.

Back to class list