So interagieren Sie mit Interrupts mithilfe von .net Core (Ubuntu)C#

Ein Treffpunkt für C#-Programmierer
Guest
 So interagieren Sie mit Interrupts mithilfe von .net Core (Ubuntu)

Post by Guest »

Ich benötige einen Wrapper (C#) für eine C-Bibliothek. Ich weiß nur nicht, welches .so ich jage.
Ich habe von etwas von Glib gehört, das möglicherweise Bindungen für .netcore hat, die libudev umschließen.
Mir wurde im Grunde eine Schnittstelle gegeben, die ich erfüllen muss ...

Code: Select all

public interface IInterruptSource
{
event EventHandler OnInterrupt;
void EnableInterrupts();
void DisableInterrupts();
}
... und eine simulierte (ungetestetes Konzept) Implementierung:

Code: Select all

public class SimulatedInterruptSource : IInterruptSource
{
public event EventHandler OnInterrupt;
private System.Timers.Timer _timer;
private bool _interruptsEnabled = false;

public SimulatedInterruptSource()
{
_timer = new System.Timers.Timer(1000); // Example: 1 second interval for timer interrupts
_timer.Elapsed += Timer_Elapsed;
}

public void EnableInterrupts()
{
_interruptsEnabled = true;
_timer.Start();
}

public void DisableInterrupts()
{
_interruptsEnabled = false;
_timer.Stop();
}

private void Timer_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
{
if (_interruptsEnabled)
{
OnInterrupt?.Invoke(this, new InterruptEventArgs(SemacorInterruptType.Timer));
}
}
}
... mit diesen Interrupt-Typen:

Code: Select all

public enum InterruptType
{
Timer,
Keyboard,
Network,
// Add more as needed
}
Ich versuche herauszufinden, ob etwas bereits existiert oder ob ich mein eigenes drehe.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post