“Cross-thread operation not valid” Hatası

Windows Forms veya WPF (windows presentation foundation) uygulamalarında, multithreaded işlemler yapmaya çalıştığımızda bazen şu hatayla karşılaşırız: “Cross-thread operation not valid”. Örneğin bir windows forms uygulamasında, işlem başlat diye bir buttonumuz olduğunu düşünelim. Buttona basılınca arka planda  bir işlem başlatalım. İşlemin uzun süreceğini varsayalım. İşlem süresince, form üzerinde işlem yapamayacağım. Aynı ui thread’ı kullanacağımız için Formu …

“Cross-thread operation not valid” Hatası Devamı »

Apache JMeter: Web Uygulamamızın Yük Testlerini Nasıl Yaparız? (1): Giriş, Kurulum

Apache JMeter’i kullanmaya başlamadan önce, neden gerekebileceği ve ne zaman uygulanabileceğine dair bir şeyler söylemek uygun olur. Bir web uygulaması yazdık. Artık Production ortamına atmak istiyoruz. Fakat, production ortamına atmadan önce uygulamamız, çok kullanıcı bağlandığında nasıl davranacak. Çökecek mi yoksa, performansı, hızı düşecek, ve requestlere çabuk cevap veremeyecek mi? Böyle bir durum olduğunda, müşterilerimizi kaybedeceğiz ve büyük …

Apache JMeter: Web Uygulamamızın Yük Testlerini Nasıl Yaparız? (1): Giriş, Kurulum Devamı »

Bir Micro-Orm Örneği olarak PetaPoco

PetaPoco kütüphanesini kullanmaya başlamadan önce, genel olarak orm kütüphanelerinden bahsetmek istiyorum. Bildiğimiz gibi hemen hemen tüm yazılım projelerinde orm (object relational mapping) aracı kullanıyoruz. EntityFramework, nhibernate, subsonic vs… Bu araçlar yazılımcı olarak bizlerin işini oldukça kolaylaştırıyor. Insert, update, delete, select sql cümlelerini yazmamız gerekmiyor. Framework bizim yerimize bu işi yapıyor. First-level cache, second-level cache gibi mekanizmalar …

Bir Micro-Orm Örneği olarak PetaPoco Devamı »

C#’ta Çağıran Metod Bilgilerine Ulaşmak (CallerMemberName)

C# diliyle kodlama yaparken, zaman zaman bazı durumlarda, bir metodun hangi metoddan çağrıldığı, çağıran metod, bilgisine ulaşmamız gerekebiliyor. Örneğin loglama benim aklıma gelen durumlardan birisi, bir başka kullanım sebebi de, hatayı yakalamak olabilir. Bir metod sadece belli bir yerden çağrıldığında hataya düşebilir. Bu durumlar için c# bize bazı kolaylıklar sunuyor. CallerMemberName özelliği. Fakat daha önce …

C#’ta Çağıran Metod Bilgilerine Ulaşmak (CallerMemberName) Devamı »

Asp.net Mvc 5’te reCaptcha Kullanımı

Captcha, web sitelerinin insanların kötü kullanımlarından korumak için geliştirilen bir sistem. Pek çoğumuz internetten bilgi girişi yaparken, captcha dediğimiz bu sistemi kullanmak durumunda kalmışızdır. İngilizce açılımı, CAPTCHA (Completely Automated Public Turing test to tell Computers and Humans Apart). Türkçesi insanlarla, bilgisayarların (otomatik çalışan scriptler, programlar) birbirinden ayrılması anlamına gelmektedir. Fakat captchaların kullanımı, son kullanıcılar için bazen …

Asp.net Mvc 5’te reCaptcha Kullanımı Devamı »

Python ile Konuşma Tanıma Uygulamaları Geliştirmek (2): (2019 güncellemesiyle)

Geçen yazımızda (Python ile Konuşma Tanıma Uygulamaları Geliştirmek (1)) yaptığımız basit konuşma tanımasında daha önce kaydettiğimiz, ses dosyalarını test ediyorduk. Bu sefer doğrudan mikrofondan gelen inputu, yazıya çevireceğiz. Güncelleme: Python 3.6.8 sürümünü kullanıyorum. 3.7 sürümüne geçmememin sebebi pyaudio kütüphanesi ile uyumlu çalışmamasıydı. Geliştirme idesi olarak da PyCharm kullandım.  Mikrofondan ses kaydetmek için, pyaudio kütüphanesini kullanacağız. Kaydettiğimiz audio …

Python ile Konuşma Tanıma Uygulamaları Geliştirmek (2): (2019 güncellemesiyle) Devamı »

Python ile Konuşma Tanıma Uygulamaları Geliştirmek (1): (2019 Güncellemesiyle)

Güncelleme: Konuşma tanıma hakkında uzun zaman önce yazmış olduğum bu yazıyı güncel python ve kütüphane sürümleriyle tekrar ele almak niyetindeydim. Epey zaman geçti. Fakat geç olması hiç olmamasından iyidir 🙂 Öncelikle yaptığım değişikliklerden bahsetmek gerekirse, şu an itibariyle python 3.6.8 sürümüne (64 bit) geçtim. Python 3.7 sürümünü kullanmamamın sebebi PortAudio kütüphanesi ile uyumlu olmaması. Kütüphanelerin hangi …

Python ile Konuşma Tanıma Uygulamaları Geliştirmek (1): (2019 Güncellemesiyle) Devamı »

Scroll to Top