نمایش نتایج 1 تا 4 از 4

نام تاپیک: Async

  1. #1
    منتظر تایید آدرس ایمیل
    تاریخ عضویت
    آذر 1387
    محل زندگی
    تهران
    پست
    848

    Async

    با سلام به همه شما دوستان
    بعضی از شما عزیزان حتما از SqlCommand.BeginExecuteReader استفاده کردین.
    یا سایر Begin هاش.
    منظورم اینه :

    حالا من میخوام متدی بنویسم که به همین شکل بشه ازش استفاده کرد.
    با یه چنین حالتی :

    ببینید؛ من نمیخوام خودم دستی متدم رو تویه یه Thread بندازم.
    نمیخوام از متدهای Async ای که خود Proxy Class ساز Visual Studio میسازه استفاده کنم.
    و هم چنین Event Driven Async Method هم به درد مشکل من نمیخوره :
    یعنی این یکی :

    چرا ؟
    روش دستی احمقانه تویه یه Thread انداختن که هیچی ! Event Driven و متدهای Async خود Visual Studio فقط به درد Async شدن تو کلاینت میخورن و تو سرور باز آش همونه و کاسه همون؛ اما اگه با این روش پیش برم؛ دو طرف Async میشن.
    و در نتیجه داریم :
    increases server scalability and performance

    ممنون میشم؛ یه مثال در حد جمع دو تا عدد و بازگردونی نتیجه تو یه End Method به من نشون بدید.
    در نهایت برای راهنمایی بیشتر؛ چیزی که من میخوام اینه :

    incoming requests are dispatched to the synchronous method

    منبع عبارات Bold شده؛ MSDN
    من انتظار زیادی ندارم؛ لینک Article ؛ فیلم یا کتاب یا هر چیز دیگه ای هم میتونه سازنده باشه.
    ممنون
    عکس های ضمیمه عکس های ضمیمه

  2. #2
    منتظر تایید آدرس ایمیل
    تاریخ عضویت
    آذر 1387
    محل زندگی
    تهران
    پست
    848

    نقل قول: Async

    دوستان خواهش میکنم.
    اگه جواب این رو بلد نیستید؛ حداقل بگید چطوری میشه مشکل کانکارنسی رو تو این سناریو حل کرد :
    یک آبجکت داریم, که چندین ترد ( حالا مثلا 10 تا )؛ باهاش درگیرن ؛ چطوری میتونیم به کانکارنسی فائق بیایم ؟
    دوستان Thread Safe بودن چاره کار نیست؛ چون فقط و فقط یک آبجکت داریم.
    بابا اینها مسئله آیا میدانید نیست !
    تا حالا هیچ وقت به یه چنین مشکلاتی برخورد نکردین ؟
    حداقل یکی یه جکی چیزی بنویسه؛ من بفهمم این مطلب داره دیده میشه.
    ممنون

  3. #3

    نقل قول: Async

    مدت ها پیش من یه همچین کاری کردم که از اینجا یاد گرفتم...

  4. #4
    منتظر تایید آدرس ایمیل
    تاریخ عضویت
    آذر 1387
    محل زندگی
    تهران
    پست
    848

    نقل قول: Async

    این مطلب رو من حدود یک سال پیش حل کردم، داشتم بوک مارک هام رو می دیدم، گفتم شاید بد نباشه که راه حلش رو این جا بنویسم
    راه حل دو مطلب فوق استفاده از Synchronization Context هستش
    در WCF شما می توانید فراخوانی تک تک دستورات را در WCF به دست بگیرید، و آن را به Thread Pool بسپارید ( مسئله اول )، و یا در یک Queue قرار دهید و یکی یکی اجرا کنید ( مسئله دوم )
    با استفاده از Wait Callback ای که در اختیار شما قرار می گیرد، می تونید هم Send کنید و هم Post تا Sync و Async رو با هم داشته باشید
    موفق باشید

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •