Attach a pointer to the specific operation.
Note that the destroy_func callback is not called if user_data is null.
| operation_id |
the identifier of a running operation |
| user_data |
the data to attach |
| destroy_func |
function to release |