home | help
std::atomic_init(3)	       C++ Standard Libary	     std::atomic_init(3)

NAME
     std::atomic_init - std::atomic_init

Synopsis
	Defined in header <atomic>
	template< class T >

	void   atomic_init						  (since
     C++11)
	    ( std::atomic<T>* obj,				    (1)  (depre-
     cated in C++20)

	      typename std::atomic<T>::value_type desired )
	noexcept;
	template< class T >

	void   atomic_init						  (since
     C++11)
	    ( volatile std::atomic<T>* obj,			    (2)  (depre-
     cated in C++20)

	      typename std::atomic<T>::value_type desired )
	noexcept;

	Initializes the default-constructed atomic object obj with the value de-
     sired. The
	function  is  not  atomic:  concurrent	access from another thread, even
     through an
	atomic operation, is a data race.

	If obj was not default-constructed, or this function is called twice  on
     the same
	obj, the behavior is undefined.

Parameters
	obj	- pointer to an atomic object to initialize
	desired - the value to initialize atomic object with

Return value
	(none)

Notes
	This function is provided for compatibility with C. If the compatibility
     is not
	required,  std::atomic may be initialized through their non-default con-
     structors.

Example
	 This section is incomplete
	 Reason: no example

	Defect reports

	The following behavior-changing defect	reports  were  applied	retroac-
     tively to
	previously published C++ standards.

	  DR	 Applied to	    Behavior as published	  Correct behav-
     ior
	P0558R1 C++11	   exact type match was required because T is  only  de-
     duced
			   T was deduced from multiple arguments from obj

See also
	ATOMIC_VAR_INIT 	      constant initialization of an atomic vari-
     able of static
	(C++11)(deprecated in C++20) storage duration
				     (function macro)
	constructor		     constructs an atomic object
				     (public member function of std::atomic<T>)
	C documentation for
	atomic_init

Category:
	  * Todo no example

http://cppreference.com 	   2024.06.10		     std::atomic_init(3)

home | help