Firing an Event in Main Thread (MonoBehavior) from a Generic Class

I have a generic class that runs in a thread that does not inherit from monobehavior. In that class is a callback that gets fired from a C DLL (i wrote a C-API plugin) that does fire the event in the generic C# class successfully. Now im trying to figure out how to fire an event (aka callback) in the main Unity thread c# script. Can someone point me to a good example of how to do this.

Basically i have a C# generic class - running in a thread - with a callback function like this:

public void OnItemFound(string item)
{
       // Equip player avatar with item found
      Debug.Log ("RFID Item Found: " + item);

      //fire a callback in the main thread here to get the item found and put it on an avatar	
}

I want this OnItemFound function to fire a call back in the main thread script which inherits from monobehavior.

thanks in advance!

Homey

Pass a reference to the instance that contains your callback or make that instance globally available (singleton) are the two solutions that occur to me.

public void OnItemFound(string item, MainLoop ml)
{
Debug.Log ("RFID Item Found: " + item);
ml.ItemFoundCallBack();
}