- File:
-
- 1 edited
-
libcfa/src/concurrency/future.hfa (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
libcfa/src/concurrency/future.hfa
r1c0a3a4 r71ca5b9 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.