Okay, to clarify, bearing in mind that I don't have time to go point by point: In the FCP *client layer* API. It does precisely what I am asking for: Any transaction is identified by the "Identifier" field, an arbitrary but unique field chosen by the client. This does not identify a connection, it identifies a stream within a (multiplexed) connection.
The PluginTalker/PluginReplySender code is rather undocumented and I don't have time to play with it / look at the related code calling it etc. I fully support adding a "send a message and wait for a reply" method. The only thing I'm asking for is that we completely ignore "when the function call returns", and block until there is a response with the correct identifier. It may be that that is the only way this can be implemented anyway, but I thought I'd seen code in plugins that assumed that the function call must be finished because the send function has returned. It looks like this can't be true because it's run off-thread, but I'm not sure ... You may know more about this than I do ... do what you think is best. But please wait for messages, not for function calls. I *think* the existing code provides an interface that reports a returning message, which is implemented by waiting for the specified identifier, so waiting for the returned message will be fine, but I'm not 100% sure of this. Please make sure you are 100% sure before you go ahead, that's all I'm asking (in a purely advisory and very time limited role!).
signature.asc
Description: OpenPGP digital signature
_______________________________________________ Devl mailing list [email protected] https://emu.freenetproject.org/cgi-bin/mailman/listinfo/devl
