{"version":"1.0","provider_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","provider_url":"https:\/\/fatihsoysal.com\/blog","author_name":"Fatih Soysal","author_url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/","title":"C#\u2019ta Singleton ve Concurrency: Oyunla\u015ft\u0131r\u0131lm\u0131\u015f Bir \u00d6\u011frenme Deneyimi","type":"rich","width":600,"height":338,"html":"<blockquote class=\"wp-embedded-content\" data-secret=\"QPTFwdsrVH\"><a href=\"https:\/\/fatihsoysal.com\/blog\/cta-singleton-ve-concurrency-oyunlastirilmis-bir-ogrenme-deneyimi\/\">C#\u2019ta Singleton ve Concurrency: Oyunla\u015ft\u0131r\u0131lm\u0131\u015f Bir \u00d6\u011frenme Deneyimi<\/a><\/blockquote><iframe sandbox=\"allow-scripts\" security=\"restricted\" src=\"https:\/\/fatihsoysal.com\/blog\/cta-singleton-ve-concurrency-oyunlastirilmis-bir-ogrenme-deneyimi\/embed\/#?secret=QPTFwdsrVH\" width=\"600\" height=\"338\" title=\"&#8220;C#\u2019ta Singleton ve Concurrency: Oyunla\u015ft\u0131r\u0131lm\u0131\u015f Bir \u00d6\u011frenme Deneyimi&#8221; &#8212; Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" data-secret=\"QPTFwdsrVH\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" class=\"wp-embedded-content\"><\/iframe><script>\n\/*! This file is auto-generated *\/\n!function(d,l){\"use strict\";l.querySelector&&d.addEventListener&&\"undefined\"!=typeof URL&&(d.wp=d.wp||{},d.wp.receiveEmbedMessage||(d.wp.receiveEmbedMessage=function(e){var t=e.data;if((t||t.secret||t.message||t.value)&&!\/[^a-zA-Z0-9]\/.test(t.secret)){for(var s,r,n,a=l.querySelectorAll('iframe[data-secret=\"'+t.secret+'\"]'),o=l.querySelectorAll('blockquote[data-secret=\"'+t.secret+'\"]'),c=new RegExp(\"^https?:$\",\"i\"),i=0;i<o.length;i++)o[i].style.display=\"none\";for(i=0;i<a.length;i++)s=a[i],e.source===s.contentWindow&&(s.removeAttribute(\"style\"),\"height\"===t.message?(1e3<(r=parseInt(t.value,10))?r=1e3:~~r<200&&(r=200),s.height=r):\"link\"===t.message&&(r=new URL(s.getAttribute(\"src\")),n=new URL(t.value),c.test(n.protocol))&&n.host===r.host&&l.activeElement===s&&(d.top.location.href=t.value))}},d.addEventListener(\"message\",d.wp.receiveEmbedMessage,!1),l.addEventListener(\"DOMContentLoaded\",function(){for(var e,t,s=l.querySelectorAll(\"iframe.wp-embedded-content\"),r=0;r<s.length;r++)(t=(e=s[r]).getAttribute(\"data-secret\"))||(t=Math.random().toString(36).substring(2,12),e.src+=\"#?secret=\"+t,e.setAttribute(\"data-secret\",t)),e.contentWindow.postMessage({message:\"ready\",secret:t},\"*\")},!1)))}(window,document);\n<\/script>\n","description":"Merhaba arkada\u015flar, Fatih Soysal olarak, bu yaz\u0131da C#'ta Singleton tasar\u0131m deseninin ne oldu\u011funu ve \u00f6zellikle e\u015fzamanl\u0131 (concurrency) ortamlarda nas\u0131l kullan\u0131laca\u011f\u0131n\u0131, e\u011flenceli bir oyun \u00f6rne\u011fiyle a\u00e7\u0131klayaca\u011f\u0131m. Singleton, uygulaman\u0131zda sadece bir \u00f6rne\u011finin olu\u015fturulmas\u0131n\u0131 sa\u011flayan bir tasar\u0131m deseni. Ancak, birden \u00e7ok i\u015f par\u00e7ac\u0131\u011f\u0131n\u0131n ayn\u0131 anda \u00e7al\u0131\u015ft\u0131\u011f\u0131 durumlarda, dikkat edilmesi gereken baz\u0131 noktalar var."}