[stopsource.cons] # 32 Concurrency support library [[thread]](./#thread) ## 32.3 Stop tokens [[thread.stoptoken]](thread.stoptoken#stopsource.cons) ### 32.3.5 Class stop_source [[stopsource]](stopsource#cons) #### 32.3.5.2 Constructors, copy, and assignment [stopsource.cons] [🔗](#lib:stop_source,constructor) `stop_source(); ` [1](#1) [#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/threads.tex#L954) *Effects*: Initializes *stop-state* with a pointer to a new stop state[.](#1.sentence-1) [2](#2) [#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/threads.tex#L958) *Postconditions*: stop_possible() is true and stop_requested() is false[.](#2.sentence-1) [3](#3) [#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/threads.tex#L963) *Throws*: bad_alloc if memory cannot be allocated for the stop state[.](#3.sentence-1)