예제 #1
0
        // Bir Istemci nesnesi bir mesaj aldýðýnda buraya iletir

        /// <param name="istemci">Paketi alan Istemci nesnesi</param>
        /// <param name="mesaj">Mesaj nesnesi</param>
        private void yeniIstemciMesajiAlindi(Istemci istemci, string mesaj)
        {
            if (IstemcidenYeniMesajAlindi != null)
            {
                IstemcidenYeniMesajAlindi(new IstemcidenMesajAlmaArgumanlari(istemci, mesaj));
            }
        }
예제 #2
0
        // PRIVATE FONKSYONLAR


        // Yeni bir istemci baðlandýðýnda buraya gönderilir.

        /// <param name="istemciSoketi">Yeni baðlanan istemci soketi</param>
        private void yeniIstemciSoketiBaglandi(Socket istemciSoketi)
        {
            //Yeni baðlanan istemciyi listeye ekle
            Istemci istemci = null;

            lock (objSenk)
            {
                istemci = new Istemci(this, istemciSoketi, ++sonIstemciID);
                istemciler.Add(istemci.IstemciID, istemci);
            }
            //Ýstemciyi çalýþmaya baþlat
            istemci.Baslat();
            //YeniIstemciBaglandi olayýný tetikle
            if (YeniIstemciBaglandi != null)
            {
                YeniIstemciBaglandi(new IstemciBaglantiArgumanlari(istemci));
            }
        }
예제 #3
0
        //Bir Istemci nesnesiyle iliþkili baðlantý kapatýldýðýnda, burasý çaðýrýlýr

        /// <param name="istemci">Kapatýlan istemci baðlantýsý</param>
        private void istemciBaglantisiKapatildi(Istemci istemci)
        {
            //IstemciBaglantisiKapatildi olayýný tetikle
            if (IstemciBaglantisiKapatildi != null)
            {
                IstemciBaglantisiKapatildi(new IstemciBaglantiArgumanlari(istemci));
            }
            //Kapanan istemciyi listeden çýkar
            if (calisiyor)
            {
                lock (objSenk)
                {
                    if (istemciler.ContainsKey(istemci.IstemciID))
                    {
                        istemciler.Remove(istemci.IstemciID);
                    }
                }
            }
        }