{"id":8971,"date":"2011-06-12T20:45:00","date_gmt":"2011-06-12T18:45:00","guid":{"rendered":"https:\/\/fatihboy.com\/post\/async_ornekleri_islem_iptali"},"modified":"2011-06-12T20:45:00","modified_gmt":"2011-06-12T18:45:00","slug":"async-ornekleri-islem-iptali","status":"publish","type":"post","link":"https:\/\/fatihboy.com\/en\/async-ornekleri-islem-iptali\/","title":{"rendered":"Async \u00d6rnekleri : \u0130\u015flem \u0130ptali"},"content":{"rendered":"<p>&nbsp;&nbsp; Hat\u0131rlarsan\u0131z <a href=\"\/en\/?tag=async\">daha \u00f6nceki yaz\u0131lar\u0131mda<\/a> Visual Studio Async CTP ile birlikte asenkron i\u015flemlerde biz yaz\u0131l\u0131m geli\u015ftiricilerin hayat\u0131n\u0131n ne kadar kolayla\u015faca\u011f\u0131ndan bahsetmi\u015ftim. Bunu \u00f6rneklemek ad\u0131na bir ka\u00e7 makale \u015feklinde payla\u015fmay\u0131 planlad\u0131\u011f\u0131m Async \u00f6rneklerinden bu ilkinde sizlere ba\u015flatt\u0131\u011f\u0131n\u0131z bir asenkron i\u015flemi nas\u0131l iptal edebiliyor oldu\u011fumuzu g\u00f6steriyor olaca\u011f\u0131m.<\/p>\n\n\n\n<p>&nbsp;&nbsp; Asl\u0131na bakarsan\u0131z C# 4.0 ile birlikte gelen paralel k\u00fct\u00fcphanesini kulland\u0131ysan\u0131z ya da kulak dolgunlu\u011funuz varsa bu yaz\u0131mda payla\u015ft\u0131klar\u0131m sizlere yabanc\u0131 gelmeyecektir. Bunun en \u00f6nemli sebebi ise Async CTP&#8217;nin arka planda bu k\u00fct\u00fcphaneleri kullan\u0131yor olmas\u0131d\u0131r.<\/p>\n\n\n\n<p>&nbsp;&nbsp; &#8220;<a href=\"\/en\/?p=8479\">C# 5, Async ile Kolayla\u015fan Asenkron \u0130\u015flemleri<\/a>&#8221; ba\u015fl\u0131kl\u0131 yaz\u0131m\u0131 hat\u0131rlayacak olursan\u0131z sizlerle birlikte Enterprisecoding.com web sitemin ana sayfas\u0131 \u00fczerinde yer alan t\u00fcm linkleri bulan ve bunu uygulama aray\u00fcz\u00fcn\u00fc kilitlemeden, asenkron olarak ger\u00e7ekle\u015ftiren a\u015fa\u011f\u0131daki uygulamay\u0131 yazm\u0131\u015ft\u0131k.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"csharp\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">private async void adresleriBul_Click(object sender, EventArgs e) {\n    var adress = \"https:\/\/fatihboy.com\/\";\n    var icerik = await new WebClient().DownloadStringTaskAsync(adress);\n    var eslesimler = Regex.Matches(icerik,\n                        @\"(?&lt;Protocol>\\w+):\\\/\\\/(?&lt;Domain>[\\w@][\\w.:@]+)\\\/?[\\w\\.?=%&amp;=\\-@\/$,]*\",\n                        RegexOptions.IgnoreCase);\n    foreach (Match eslesim in eslesimler) {\n        adresListesi.Items.Add(eslesim.Value);\n    }\n}<\/pre>\n\n\n\n<p>&nbsp;&nbsp; Bu uygulamam\u0131z, hedefledi\u011fimiz gibi, senkron programlamaya g\u00f6re \u00e7ok daha iyi bir kullan\u0131c\u0131 deneyimi sunarak kolayl\u0131kla her durumda yan\u0131t veren bir aray\u00fcze sahip olmam\u0131z\u0131 sa\u011flam\u0131\u015ft\u0131. \u015eimdi, birlikte bu uygulamay\u0131 bir ad\u0131m daha ileri g\u00f6t\u00fcrerek, uzun s\u00fcren i\u015flemlerde kullan\u0131c\u0131ya ba\u015flat\u0131lan i\u015flemi iptal etme \u015fans\u0131 sunal\u0131m.<\/p>\n\n\n\n<p>&nbsp;&nbsp; C# paralel programlamada ba\u015flat\u0131lan bir i\u015fin iptali <strong>CancellationTokenSource<\/strong> ad\u0131ndaki \u00f6zel bir s\u0131n\u0131f \u00fczerinden yap\u0131lmaktad\u0131r. Temelde di\u011fer C# s\u0131n\u0131flar\u0131nda bir fark\u0131 olmayan <em>CancellationTokenSource<\/em> s\u0131n\u0131f\u0131 i\u00e7erisinde yer alan <strong>IsCancellationRequested<\/strong> ve <strong>Token<\/strong> \u00f6zellikleri sayesinde iptale ili\u015fkin durum bilgisini ilgili i\u015fleme iletebilmektedir. Paralel programlama teknikleri hakk\u0131nda ara\u015ft\u0131rma yapan ya da daha \u00f6nce kullanm\u0131\u015f olan herkesin \u00e7ok iyi bilece\u011fi gibi ba\u015flat\u0131lan hi\u00e7 bir i\u015f par\u00e7ac\u0131\u011f\u0131 (<em>thread<\/em>) ba\u015flatan taraf\u0131ndan do\u011frudan sonland\u0131r\u0131lmamal\u0131d\u0131r. Gelen sonland\u0131rma talepleri ilgili i\u015f par\u00e7ac\u0131\u011f\u0131 i\u00e7erisinde de\u011ferlendirilerek i\u015f par\u00e7ac\u0131\u011f\u0131n\u0131n kendi kendini sonland\u0131rmas\u0131 sa\u011flanmal\u0131d\u0131r. Bu pratik do\u011frultusunda, boolean veri t\u00fcr\u00fcnde olan <em>IsCancellationRequested<\/em> \u00f6zelli\u011fi i\u015flemin iptaline y\u00f6nelik bir istek yap\u0131l\u0131p yap\u0131lmad\u0131\u011f\u0131 bilgisini tutmaktad\u0131r. Bu \u00f6zellik yaz\u0131l\u0131m geli\u015ftiriciler taraf\u0131ndan tasarlanan her i\u015flemin do\u011fru ve zaman\u0131nda bir iptal yapabilmesi ad\u0131na belirli aral\u0131kla kontrol etmesi gereken bir \u00f6zelliktir. Veri t\u00fcr\u00fc <strong>CancellationToken<\/strong> olan Token \u00f6zelli\u011fi ise; iptal&#8217;e ili\u015fkin daha detayl\u0131 bilgi bar\u0131nd\u0131rmaktad\u0131r. CancellationToken vas\u0131tas\u0131yla sunulan \u00f6zelliklerden belki de en g\u00fczeli i\u015flemin iptal edilmesi durumunun duyuruluyor olmas\u0131d\u0131r. CancellationToken i\u00e7erisinde yer alan <strong>Register<\/strong> fonksiyonu kullan\u0131larak iptal s\u0131ras\u0131nda tetiklenecek olan delegate belirtilebilir.<\/p>\n\n\n\n<p>&nbsp;&nbsp; Yukar\u0131da teorik olarak sizlerle payla\u015ft\u0131\u011f\u0131m bilgileri \u00f6nceki makalemizde haz\u0131rlam\u0131\u015f oldu\u011fumuz kodumuza uygulayacak olursak adresleriBul_Click fonksiyonumuz a\u015fa\u011f\u0131daki gibi olacakt\u0131r;<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"csharp\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">private async void adresleriBul_Click(object sender, EventArgs e) {\n    adresleriBul.Enabled = false;\n    cts = new CancellationTokenSource();\n    cts.Token.Register(() => { message.Text = \"\u0130\u015flem iptal edildi...\"; });\n    try {\n        message.Text = \"\u0130\u015flem ba\u015flat\u0131ld\u0131\";\n        var adress = new Uri(\"https:\/\/fatihboy.com\/\");\n        var icerik = await new WebClient().DownloadStringTaskAsync(adress, cts.Token);\n        var eslesimler = Regex.Matches(icerik,\n                            @\"(?&lt;Protocol>\\w+):\\\/\\\/(?&lt;Domain>[\\w@][\\w.:@]+)\\\/?[\\w\\.?=%&amp;=\\-@\/$,]*\",\n                            RegexOptions.IgnoreCase);\n \n        foreach (Match eslesim in eslesimler) {\n            cts.Token.ThrowIfCancellationRequested();\n            adresListesi.Items.Add(eslesim.Value);\n        }\n \n        message.Text = \"\u0130\u015flem tamamland\u0131...\";\n    }\n    catch (OperationCanceledException) {\n        \/\/ \u0130\u015flemin iptal edildi\u011fini belirten hata mesaj\u0131\n        \/\/ iptal s\u0131ras\u0131nda yap\u0131lacak bir i\u015flem varsa, \u00f6rne\u011fin\n        \/\/ a\u00e7\u0131k bir stream kapat\u0131lmas\u0131, burada ger\u00e7ekle\u015ftirilmelidir.\n    }\n    finally {\n        adresleriBul.Enabled = true;\n    }\n}<\/pre>\n\n\n\n<p>&nbsp;&nbsp; Yukar\u0131daki kod ile ilgili d\u00fc\u015f\u00fclmesi gereken \u00f6nemli bir not, bu y\u00f6ntemle iptal edilen i\u015flemlerde ilgili kod par\u00e7ac\u0131\u011f\u0131nda <strong>OperationCanceledException<\/strong> hatas\u0131n\u0131n at\u0131l\u0131yor olmas\u0131d\u0131r. Bu i\u015flemler ard\u0131ndan aray\u00fcz\u00fcm\u00fcze ekleyece\u011fimiz bir iptal butonunun click olay\u0131nda da a\u015fa\u011f\u0131daki kod ile i\u015flemimizi kolayl\u0131kla iptal edebiliriz;<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"csharp\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">private void iptal_Click(object sender, EventArgs e) {\n    if (cts != null) {\n        message.Text = \"\u0130\u015flem iptal ediliyor...\";\n        cts.Cancel();\n    }\n}<\/pre>\n\n\n\n<p>&nbsp;&nbsp; G\u00f6r\u00fcld\u00fc\u011f\u00fc gibi async ile i\u015fler ger\u00e7ekten de olduk\u00e7a kolayla\u015f\u0131yor; \u00f6zellikle de yukar\u0131daki gibi bir i\u015flemi mevcut y\u00f6ntemlerle nas\u0131l ger\u00e7ekle\u015ftirme i\u00e7in u\u011fra\u015ft\u0131\u011f\u0131m\u0131z\u0131 g\u00f6z \u00f6n\u00fcne alacak olursak\u2026<\/p>","protected":false},"excerpt":{"rendered":"<p>&nbsp;&nbsp; Hat\u0131rlarsan\u0131z daha \u00f6nceki yaz\u0131lar\u0131mda Visual Studio Async CTP ile birlikte asenkron i\u015flemlerde biz yaz\u0131l\u0131m geli\u015ftiricilerin hayat\u0131n\u0131n ne kadar kolayla\u015faca\u011f\u0131ndan bahsetmi\u015ftim. Bunu \u00f6rneklemek ad\u0131na bir ka\u00e7 makale \u015feklinde payla\u015fmay\u0131 planlad\u0131\u011f\u0131m Async \u00f6rneklerinden bu ilkinde sizlere ba\u015flatt\u0131\u011f\u0131n\u0131z bir asenkron i\u015flemi nas\u0131l iptal edebiliyor oldu\u011fumuzu g\u00f6steriyor olaca\u011f\u0131m. &nbsp;&nbsp; Asl\u0131na bakarsan\u0131z C# 4.0 ile birlikte gelen paralel k\u00fct\u00fcphanesini&#8230;<\/p>\n<p><a class=\"read-more\" href=\"https:\/\/fatihboy.com\/en\/async-ornekleri-islem-iptali\/\">Read More<\/a><\/p>","protected":false},"author":1,"featured_media":8976,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[77,28],"tags":[113,41],"class_list":["post-8971","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-csharp","category-turkce","tag-async","tag-c"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.7 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Async \u00d6rnekleri : \u0130\u015flem \u0130ptali - Fatih Boy<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihboy.com\/en\/async-ornekleri-islem-iptali\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Async \u00d6rnekleri : \u0130\u015flem \u0130ptali - Fatih Boy\" \/>\n<meta property=\"og:description\" content=\"&nbsp;&nbsp; Hat\u0131rlarsan\u0131z daha \u00f6nceki yaz\u0131lar\u0131mda Visual Studio Async CTP ile birlikte asenkron i\u015flemlerde biz yaz\u0131l\u0131m geli\u015ftiricilerin hayat\u0131n\u0131n ne kadar kolayla\u015faca\u011f\u0131ndan bahsetmi\u015ftim. Bunu \u00f6rneklemek ad\u0131na bir ka\u00e7 makale \u015feklinde payla\u015fmay\u0131 planlad\u0131\u011f\u0131m Async \u00f6rneklerinden bu ilkinde sizlere ba\u015flatt\u0131\u011f\u0131n\u0131z bir asenkron i\u015flemi nas\u0131l iptal edebiliyor oldu\u011fumuzu g\u00f6steriyor olaca\u011f\u0131m. &nbsp;&nbsp; Asl\u0131na bakarsan\u0131z C# 4.0 ile birlikte gelen paralel k\u00fct\u00fcphanesini...Read More\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihboy.com\/en\/async-ornekleri-islem-iptali\/\" \/>\n<meta property=\"og:site_name\" content=\"Fatih Boy\" \/>\n<meta property=\"article:published_time\" content=\"2011-06-12T18:45:00+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/fatihboy.com\/wp-content\/uploads\/2011\/06\/canceled_thumb.png\" \/>\n\t<meta property=\"og:image:width\" content=\"209\" \/>\n\t<meta property=\"og:image:height\" content=\"208\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Fatih Boy\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Boy\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihboy.com\/async-ornekleri-islem-iptali\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihboy.com\/async-ornekleri-islem-iptali\/\"},\"author\":{\"name\":\"Fatih Boy\",\"@id\":\"https:\/\/fatihboy.com\/#\/schema\/person\/6b06a41d42eed36eaa0780fbeb774158\"},\"headline\":\"Async \u00d6rnekleri : \u0130\u015flem \u0130ptali\",\"datePublished\":\"2011-06-12T18:45:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihboy.com\/async-ornekleri-islem-iptali\/\"},\"wordCount\":622,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihboy.com\/#\/schema\/person\/6b06a41d42eed36eaa0780fbeb774158\"},\"image\":{\"@id\":\"https:\/\/fatihboy.com\/async-ornekleri-islem-iptali\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/fatihboy.com\/wp-content\/uploads\/2011\/06\/canceled_thumb.png\",\"keywords\":[\"Async\",\"C#\"],\"articleSection\":[\"C#\",\"T\u00fcrk\u00e7e\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihboy.com\/async-ornekleri-islem-iptali\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihboy.com\/async-ornekleri-islem-iptali\/\",\"url\":\"https:\/\/fatihboy.com\/async-ornekleri-islem-iptali\/\",\"name\":\"Async \u00d6rnekleri : \u0130\u015flem \u0130ptali - Fatih Boy\",\"isPartOf\":{\"@id\":\"https:\/\/fatihboy.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/fatihboy.com\/async-ornekleri-islem-iptali\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/fatihboy.com\/async-ornekleri-islem-iptali\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/fatihboy.com\/wp-content\/uploads\/2011\/06\/canceled_thumb.png\",\"datePublished\":\"2011-06-12T18:45:00+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihboy.com\/async-ornekleri-islem-iptali\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihboy.com\/async-ornekleri-islem-iptali\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/fatihboy.com\/async-ornekleri-islem-iptali\/#primaryimage\",\"url\":\"https:\/\/fatihboy.com\/wp-content\/uploads\/2011\/06\/canceled_thumb.png\",\"contentUrl\":\"https:\/\/fatihboy.com\/wp-content\/uploads\/2011\/06\/canceled_thumb.png\",\"width\":209,\"height\":208},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihboy.com\/async-ornekleri-islem-iptali\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/fatihboy.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Async \u00d6rnekleri : \u0130\u015flem \u0130ptali\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihboy.com\/#website\",\"url\":\"https:\/\/fatihboy.com\/\",\"name\":\"Fatih Boy\",\"description\":\"Ki\u015fisel Web Sitesi\",\"publisher\":{\"@id\":\"https:\/\/fatihboy.com\/#\/schema\/person\/6b06a41d42eed36eaa0780fbeb774158\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihboy.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihboy.com\/#\/schema\/person\/6b06a41d42eed36eaa0780fbeb774158\",\"name\":\"Fatih Boy\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/fatihboy.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/5b3de123ad95a2ffe30b75a54cee98b55f65185c6d6805b35088a3d945f2feb4?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/5b3de123ad95a2ffe30b75a54cee98b55f65185c6d6805b35088a3d945f2feb4?s=96&d=mm&r=g\",\"caption\":\"Fatih Boy\"},\"logo\":{\"@id\":\"https:\/\/fatihboy.com\/#\/schema\/person\/image\/\"},\"sameAs\":[\"https:\/\/fatihboy.com\"],\"url\":\"https:\/\/fatihboy.com\/en\/author\/fatih\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Async \u00d6rnekleri : \u0130\u015flem \u0130ptali - Fatih Boy","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihboy.com\/en\/async-ornekleri-islem-iptali\/","og_locale":"en_US","og_type":"article","og_title":"Async \u00d6rnekleri : \u0130\u015flem \u0130ptali - Fatih Boy","og_description":"&nbsp;&nbsp; Hat\u0131rlarsan\u0131z daha \u00f6nceki yaz\u0131lar\u0131mda Visual Studio Async CTP ile birlikte asenkron i\u015flemlerde biz yaz\u0131l\u0131m geli\u015ftiricilerin hayat\u0131n\u0131n ne kadar kolayla\u015faca\u011f\u0131ndan bahsetmi\u015ftim. Bunu \u00f6rneklemek ad\u0131na bir ka\u00e7 makale \u015feklinde payla\u015fmay\u0131 planlad\u0131\u011f\u0131m Async \u00f6rneklerinden bu ilkinde sizlere ba\u015flatt\u0131\u011f\u0131n\u0131z bir asenkron i\u015flemi nas\u0131l iptal edebiliyor oldu\u011fumuzu g\u00f6steriyor olaca\u011f\u0131m. &nbsp;&nbsp; Asl\u0131na bakarsan\u0131z C# 4.0 ile birlikte gelen paralel k\u00fct\u00fcphanesini...Read More","og_url":"https:\/\/fatihboy.com\/en\/async-ornekleri-islem-iptali\/","og_site_name":"Fatih Boy","article_published_time":"2011-06-12T18:45:00+00:00","og_image":[{"width":209,"height":208,"url":"https:\/\/fatihboy.com\/wp-content\/uploads\/2011\/06\/canceled_thumb.png","type":"image\/png"}],"author":"Fatih Boy","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Fatih Boy","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihboy.com\/async-ornekleri-islem-iptali\/#article","isPartOf":{"@id":"https:\/\/fatihboy.com\/async-ornekleri-islem-iptali\/"},"author":{"name":"Fatih Boy","@id":"https:\/\/fatihboy.com\/#\/schema\/person\/6b06a41d42eed36eaa0780fbeb774158"},"headline":"Async \u00d6rnekleri : \u0130\u015flem \u0130ptali","datePublished":"2011-06-12T18:45:00+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihboy.com\/async-ornekleri-islem-iptali\/"},"wordCount":622,"commentCount":0,"publisher":{"@id":"https:\/\/fatihboy.com\/#\/schema\/person\/6b06a41d42eed36eaa0780fbeb774158"},"image":{"@id":"https:\/\/fatihboy.com\/async-ornekleri-islem-iptali\/#primaryimage"},"thumbnailUrl":"https:\/\/fatihboy.com\/wp-content\/uploads\/2011\/06\/canceled_thumb.png","keywords":["Async","C#"],"articleSection":["C#","T\u00fcrk\u00e7e"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihboy.com\/async-ornekleri-islem-iptali\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/fatihboy.com\/async-ornekleri-islem-iptali\/","url":"https:\/\/fatihboy.com\/async-ornekleri-islem-iptali\/","name":"Async \u00d6rnekleri : \u0130\u015flem \u0130ptali - Fatih Boy","isPartOf":{"@id":"https:\/\/fatihboy.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/fatihboy.com\/async-ornekleri-islem-iptali\/#primaryimage"},"image":{"@id":"https:\/\/fatihboy.com\/async-ornekleri-islem-iptali\/#primaryimage"},"thumbnailUrl":"https:\/\/fatihboy.com\/wp-content\/uploads\/2011\/06\/canceled_thumb.png","datePublished":"2011-06-12T18:45:00+00:00","breadcrumb":{"@id":"https:\/\/fatihboy.com\/async-ornekleri-islem-iptali\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihboy.com\/async-ornekleri-islem-iptali\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/fatihboy.com\/async-ornekleri-islem-iptali\/#primaryimage","url":"https:\/\/fatihboy.com\/wp-content\/uploads\/2011\/06\/canceled_thumb.png","contentUrl":"https:\/\/fatihboy.com\/wp-content\/uploads\/2011\/06\/canceled_thumb.png","width":209,"height":208},{"@type":"BreadcrumbList","@id":"https:\/\/fatihboy.com\/async-ornekleri-islem-iptali\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/fatihboy.com\/"},{"@type":"ListItem","position":2,"name":"Async \u00d6rnekleri : \u0130\u015flem \u0130ptali"}]},{"@type":"WebSite","@id":"https:\/\/fatihboy.com\/#website","url":"https:\/\/fatihboy.com\/","name":"Fatih Boy","description":"Ki\u015fisel Web Sitesi","publisher":{"@id":"https:\/\/fatihboy.com\/#\/schema\/person\/6b06a41d42eed36eaa0780fbeb774158"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihboy.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihboy.com\/#\/schema\/person\/6b06a41d42eed36eaa0780fbeb774158","name":"Fatih Boy","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/fatihboy.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/5b3de123ad95a2ffe30b75a54cee98b55f65185c6d6805b35088a3d945f2feb4?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/5b3de123ad95a2ffe30b75a54cee98b55f65185c6d6805b35088a3d945f2feb4?s=96&d=mm&r=g","caption":"Fatih Boy"},"logo":{"@id":"https:\/\/fatihboy.com\/#\/schema\/person\/image\/"},"sameAs":["https:\/\/fatihboy.com"],"url":"https:\/\/fatihboy.com\/en\/author\/fatih\/"}]}},"brizy_media":[],"_links":{"self":[{"href":"https:\/\/fatihboy.com\/en\/wp-json\/wp\/v2\/posts\/8971","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihboy.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihboy.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihboy.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihboy.com\/en\/wp-json\/wp\/v2\/comments?post=8971"}],"version-history":[{"count":0,"href":"https:\/\/fatihboy.com\/en\/wp-json\/wp\/v2\/posts\/8971\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/fatihboy.com\/en\/wp-json\/wp\/v2\/media\/8976"}],"wp:attachment":[{"href":"https:\/\/fatihboy.com\/en\/wp-json\/wp\/v2\/media?parent=8971"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihboy.com\/en\/wp-json\/wp\/v2\/categories?post=8971"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihboy.com\/en\/wp-json\/wp\/v2\/tags?post=8971"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}