Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ConcurrentQueue<packet> queue = new ConcurrentQueue<packet>();
- while(true){
- packet data;
- if (!queue.TryPeek(out packet)) continue;
- send(data);
- queue.TryDequeue(out data); //remove sent packet from the queue
- }
- public struct packet
- {
- public byte[] data;
- public uint Length;
- public address addr;
- public string priority;
- }
- while(true){
- packet data;
- if (!queue.TryPeek(out packet)) continue;
- foreach(packet x in queue)
- {
- if(x.priority == "high")
- {
- send(data);
- queue.TryDequeue(out data);
- }
- }
- send(data);
- queue.TryDequeue(out data);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement