Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Web Server
#1
Mevcut VCL uygulamamın içerisine bir web server eklemem gerekti ve bunu TIdHTTPWebBrokerBridge vasıtası ile gerçekleştirdim. Öncelikle bir uyarıda bulunayım ardından da bir soru sorayım.

TWebDispatcher içinde tanımladığınız Action'ların OnAction olayında yazmış olduğunuz kodlar main thread'in context'in de değil, başka bir thread context'inde çalışır.(Beklendiği gibi, neticede bu bir Web Server). Dolayısı ile ana thread'in kontrol ettiği görsel bileşenlere ya da ortak kullanımda olan nesnelere erişir iken dikkatli olun.

Şimdi gelelim soruma:

İlgili Action'ın OnAction olayına yazdığım kodlar çalışır iken (varsayalım 100 saniye sürecek), kullanıcı uygulamadan çıkmak ister ise; bu durumda Web Server'ı stop ediyorum (Active := false). Ancak, hâla içeride çalışan bir thread olduğu için, Web Server bu çalışan thread'in sonlanmasını bekler durumda oluyor. İlgili thread'leri TerminateThread ya da ona benzer prematüre yöntemler ile sonlandırmak istemiyorum, ancak uzun süre beklemek de istemiyorum. İlgili nesnenin (TIdHTTPWebBrokerBridge) TerminateWaitTime property'sinin varsayılan değeri 5000, ben bu değeri Server'ı stoplamadan önce 1000 değeri ile değiştiriyorum ama etkisini göremedim.

Indy kodlarının içinde kaybolmadan önce, bu konu ile uğraşmış olan bir arkadaşım var mı diye sormak istedim sizlere. Maalesef ilgili sınıfın dökümantasyonu da yok.

Kısaca niyetim, Server'ı hızlıca Shutdown etmek.
Mal sahibi, mülk sahibi
Hani bunun ilk sahibi ?
Mal da yalan mülk de yalan
Var biraz da sen oyalan...
WWW
Cevapla
#2
Merhaba Tuğrul Bey,

INDY'nin hangi sürümünü kullanıyorsunuz?

INDY Dökümantasyonunun olmadığını belirtmişsiniz, doğru, Indyproject.org'da bu dökümanlar bulunmuyor dediğiniz gibi. Buna istinaden aşağıdaki linkleri kullanabilirsiniz;

Indy-9-0-Help-Html.zip

Indy-9-0-Help-Pdf.zip

IndyDocs_10.1.5.0_Html.zip

IndyDocs_10.1.5.0_Pdf.zip

Diğer belgeler için aşağıdaki linkten faydalanılabilir;

http://mediaserver.fh-wedel.de/public/la...loads.html

http://www.indyproject.org/Sockets/Docs/index.en.aspx
YouTube Delphi Tips
"Mantıklı adam kendini dünyaya uyarlar; mantıksız adam ise dünyayı kendine uydurmakta inat eder. Bu nedenle, tüm ilerleme o inatçı adama bağlıdır." - George Bernard Shaw
WWW
Cevapla
#3
Bu linkden INDY son sürümleri indirebilirsiniz.
Güncelleme sıklığı neredeyse hergün Smile
İçerisinde demolarda bulunmakta.


https://indy.fulgan.com/
Cevapla
#4
Indy 10.1.5 versiyonunu kullanıyorum. Delphi Seattle ile birlikte. Indy'nin bahsettiğiniz help dökümanlarında TIdHTTPWebBrokerBridge ile ilgili malümat var mı bilmiyorum ama bir tanesini indirdim ve göremedim. Benim sorunum dökümantasyon da değil esasen.

Indy'nin yeni versiyonları ile de ilgilenmiyorum. İstediğim server'ı hızlıca shutdown edebilmek. Herneyse, anlaşılan o ki indy kaynak kodlarına doğru bir yolculuğa çıkacağız. İlgilenen arkadaşlarıma teşekkür ederim.
Mal sahibi, mülk sahibi
Hani bunun ilk sahibi ?
Mal da yalan mülk de yalan
Var biraz da sen oyalan...
WWW
Cevapla
#5
Hocam çözebilirsen bilgi almak isterim, bi ara karıştırmıştım kodlarını ama yetersizim o konuda.
WWW
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Delphi ile SQL server bağlantı hatası yakalama Under 20 1.981 21-11-2025, Saat: 15:24
Son Yorum: mrmarman
  TIdHTTPWebBrokerBridge ile HTTP server de response bloklanabilirmi? aegean 1 405 25-09-2025, Saat: 19:57
Son Yorum: aegean
  Rest Server Hata m_ekici 2 740 09-03-2025, Saat: 13:32
Son Yorum: m_ekici
  Rest Server e gönderilen bilgiler m_ekici 8 1.550 17-02-2025, Saat: 11:43
Son Yorum: m_ekici
  Rest Server m_ekici 8 1.743 21-10-2024, Saat: 08:47
Son Yorum: RAD Coder



Konuyu Okuyanlar: 1 Ziyaretçi