Changeset 49510db for libcfa/src/concurrency/future.hfa
- Timestamp:
- Jan 29, 2025, 9:09:20 AM (8 months ago)
- Branches:
- master
- Children:
- a22e8b4
- Parents:
- a950021 (diff), c699602 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)
links above to see all the changes relative to each parent. - File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
libcfa/src/concurrency/future.hfa
ra950021 r49510db 9 9 // Author : Thierry Delisle & Peiran Hong & Colby Parsons 10 10 // Created On : Wed Jan 06 17:33:18 2021 11 // Last Modified By : Peter A. Buhr12 // Last Modified On : Fri Nov 29 16:07:34 202413 // Update Count : 3 011 // Last Modified By : Kyoung Seo 12 // Last Modified On : Mon Jan 27 20:35:00 2025 13 // Update Count : 3 14 14 // 15 15 … … 260 260 if( this.has_first != false) abort("Attempting to reset a multi_future with at least one blocked threads"); 261 261 if( !is_empty(this.blocked) ) abort("Attempting to reset a multi_future with multiple blocked threads"); 262 reset( (future_t&) this);262 reset( (future_t&)*(future_t*)((uintptr_t)&this + sizeof(monitor$)) ); 263 263 } 264 264 … … 266 266 bool fulfil( multi_future(T) & this, T result ) { 267 267 this.result = result; 268 return fulfil( (future_t&) this) != 0p;268 return fulfil( (future_t&)*(future_t*)((uintptr_t)&this + sizeof(monitor$)) ) != 0p; 269 269 } 270 270 … … 275 275 bool w = !sw; 276 276 if ( sw ) { 277 w = wait( (future_t&) this);277 w = wait( (future_t&)*(future_t*)((uintptr_t)&this + sizeof(monitor$)) ); 278 278 $first_done( this ); 279 279 }
Note:
See TracChangeset
for help on using the changeset viewer.