Threadpooling

04/03/2016 22:55 Ludder231#1
Hi,

ich versuche gerade ein paar Sachen mit Threadpooling.

Und zwar möchte ich Auktionen überwachen, wie viel Sekunden Zeit noch bleibt.


Und zwar möchte ich das "VerfolgeAuktion" mir für jeden Thread einen Wert zurück gibt. Wie in der For-Schleife.

Wie kann ich das realisieren? Hab leider nicht so hilfreiche Sachen bei MSDN gefunden :(

MfG Ludder231
04/08/2016 13:24 Logtetsch#2
Code:
private class AuktionsData<T>
{
     internal readonly string AuktionsId;
     internal T wertVonVerfolgeAuktion;

     internal AuktionsData(string auktionsId, T standardWert)
     {
          AuktionsId = auktionsId;
          wertVonVerfolgeAuktion = standardWert;
     }
}

//.......
var verfolgeAuktionArgs = new AuktionsData("...", false);
VerfolgeAuktion(verfolgeAuktionArgs);

//........
void VerfolgeAuktion(AuktionsData verfolgeAuktionArgs)
     {
           ThreadPool.QueueUserWorkItem(state => 
                {
                      var data = state as AuktionsData;
                      
                      //do somethin and "return"
                      data.wertVonVerfolgeAuktion = xxx;
                }, verfolgeAuktionArgs);
}
Bin erst vor paar Minuten aufgestanden, kann also gut möglich sein, dass sich noch Fehler im Code verbergen. Jedoch hoffe ich, dass der Ansatz verständlich ist..
04/08/2016 19:57 Ludder231#3
Quote:
Originally Posted by Logtetsch View Post
Code:
private class AuktionsData<T>
{
     internal readonly string AuktionsId;
     internal T wertVonVerfolgeAuktion;

     internal AuktionsData(string auktionsId, T standardWert)
     {
          AuktionsId = auktionsId;
          wertVonVerfolgeAuktion = standardWert;
     }
}

//.......
var verfolgeAuktionArgs = new AuktionsData("...", false);
VerfolgeAuktion(verfolgeAuktionArgs);

//........
void VerfolgeAuktion(AuktionsData verfolgeAuktionArgs)
     {
           ThreadPool.QueueUserWorkItem(state => 
                {
                      var data = state as AuktionsData;
                      
                      //do somethin and "return"
                      data.wertVonVerfolgeAuktion = xxx;
                }, verfolgeAuktionArgs);
}
Bin erst vor paar Minuten aufgestanden, kann also gut möglich sein, dass sich noch Fehler im Code verbergen. Jedoch hoffe ich, dass der Ansatz verständlich ist..
Ich werde es morgen mal anschauen. Danke dir :)