Sink (computing)

In software engineering, an event sink is a class or function that receives events from another object or function, while a sink can also refer to a node of a directed acyclic graph with no additional nodes leading out from it, among other uses.

Other object-oriented languages, such as Java and C#, have built-in support for sinks by allowing events to be fired to delegate functions.

Due to lack of formal definition, a sink is often misconstrued with a gateway, which is a similar construct but the latter is usually either an end-point or allows bi-direction communication between dissimilar systems, as opposed to just an event input point [citation needed].

[1] Directed acyclic graphs are used in instruction scheduling, neural networks and data compression.

[citation needed] Mobile sink is proposed to save sensor energy for multihop communication in transferring data to a base station (sink) in wireless sensor networks.