IAddressableI'm trying to get the key of the grain - not the long identity string, but the actual Id that was used to create the proxy - there are a bunch of extension methods on
GetPrimaryKeyLong, etc. But how can I tell which one should I call? I wanted to call
IsPrimaryKeyBasedOnLongbut it returns
truefor grains that use
stringkeys, which confuses the hell out of me
I think the interface approach is best for all kinds. Note that it's not entirely accurate since technically:
a) A grain can implement all or none of those interfaces, and
b) GrainIds are independent of grain interfaces
I want to make the id vs communications interface more explicit down the line
Trying to draw some parallels between Orleans and historical methods.
When polling for information (i.e. polling individual SNMP tags) in a standard application you'd have a bunch of threads/long running tasks performing a request to a specific tag and then updating some state data. In Orleans, the analogy would be reminders + timers from what I can tell.
Now considering the case where the data is unsolicited (i.e. multicast packets coming into the Orleans cluster), what is the similar "clusterable" mechanism for listening for this data? Historically, you'd just have a udp client blocking on its receive method and then performing processing as the new data comes through.
A C# game server simulating a civilization world allowing roles free interacting. The key goals of the game are to dynamically generate any skills, technologies, recipes, and objects according to role behavior, and imitating real-world roles interacting logic as much as possible.
Interesting. Uses Orleans for the server, too.