---
metadata:
  - name: generator
    content: Diplodoc Platform v5.52.0
alternate:
  - https://yandex.com.tr/dev/games/doc/en/sdk/construct-3/throttle-debounce.md
  - https://yandex.com.tr/dev/games/doc/hi/sdk/construct-3/throttle-debounce.md
  - https://yandex.com.tr/dev/games/doc/ko/sdk/construct-3/throttle-debounce.md
  - https://yandex.com.tr/dev/games/doc/ru/sdk/construct-3/throttle-debounce.md
  - https://yandex.com.tr/dev/games/doc/tr/sdk/construct-3/throttle-debounce.md
  - https://yandex.com.tr/dev/games/doc/vi/sdk/construct-3/throttle-debounce.md
  - https://yandex.com.tr/dev/games/doc/zh/sdk/construct-3/throttle-debounce.md
  - href: tr/sdk/construct-3/throttle-debounce.md
    type: text/markdown
    title: Markdown version
  - href: ../../llms.txt
    type: text/markdown
    title: llms.txt
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.com.tr/dev/games/doc/tr/llms.txt

# Throttle ve Debounce

<!-- source: tr/_includes/script-common.md -->
<!-- source: tr/_includes/script/index-js.md -->

<!-- endsource: tr/_includes/script/index-js.md -->

<!-- source: tr/_includes/script/requirements-js.md -->

<!-- endsource: tr/_includes/script/requirements-js.md -->

<!-- source: tr/_includes/script/image-modal-js.md -->

<!-- endsource: tr/_includes/script/image-modal-js.md -->
<!-- endsource: tr/_includes/script-common.md -->

Eklenti, **Not more than once in \<X\> seconds** ve **On a deferred event** adlı iki özel koşula erişim sağlar.

Eğer JavaScript kullanmayı tercih ederseniz, aşağıdaki makalelere göz atabilirsiniz: [Arama forması örneğinde Debounce](https://doka.guide/js/debounce/){.external} ve [Sayfa kaydırma örneğinde Throttle](https://doka.guide/js/throttle/){.external}.



## Throttle {#throttle}

Oyunun bazı bölümleri, genel performansa önemli ölçüde etki edebilir. Örneğin, fizik veya yapay zeka işlemleri.

Böyle karmaşık hesaplamalar nedeniyle, onları çok sık kullanmaktan kaçınmak daha iyidir. Böyle durumlarda genellikle **Every \<X\> seconds** kullanılır, böylece kod belirli bir süre sonra çalıştırılır, ancak her zaman mümkün değildir.

Eğer oyun mekanizması ekrana tıklanmasıyla gerçekleşen bir şey varsa, ne yapmalıyız? Böyle durumlarda, kodun çalışma sıklığını sınırlamak gerekir, ancak zamanlayıcı kullanamıyorsanız, özel bir koşul olan **Not more than once in \<X\> seconds**'yi kullanabilirsiniz.

{% note warning %}

**Not more than once in \<X\> seconds**'yi her tick'ta kullanmak önerilmez, bu herhangi bir sonuca yol açmaz, ancak bunun yerine **Every \<X\> seconds** kullanmak daha iyidir.

![](../../_images/construct-3/leaderboards/debounce.webp)

{% endnote %}



## Debounce {#debounce}

SDK'nın bazı yöntemleri, belirli bir süre içinde istek sayısına ilişkin kısıtlamalara sahiptir. Bu kısıtlamalara uymazsanız, oyununuz moderasyondan geçmeyebilir.

Örneğin, eğer lider tahtasındaki puanı çok sık güncelliyorsanız, **On a deferred event** adlı özel bir koşulu **Delay execution** tetikleme koşuluyla birlikte kullanmanız gerekir. Bu kombinasyon, yerel **Signal** → **On signal** çiftine benzer şekilde çalışır, ancak çağrıyı son yürütme denemesinden belirli bir süre erteleyecektir.

Ancak, bu koşul, önceki **Not more than once in \<X\> seconds** koşulu ile karıştırılabilir, çünkü onu da çok sık çağrılmaması gereken kodu gizlemek için kullandık, o zaman fark nerede?

Onlar arasındaki ana fark, **Not more than once in \<X\> seconds** çağrı sıklığını sınırlarken, **On a deferred event** fonksiyon çağrısını belirli bir süre erteler, ve bu tam olarak bize gereken şeydir, çünkü puanı tabloya gönderme durumunda, fonksiyonu çok sık çalıştırmamız gerekmez, sadece sınıra uymamız yeterlidir.

**Not more than once in \<X\> seconds** ve **On a deferred event** arasındaki farkın görselleştirmesi:

@[youtube](https://www.youtube.com/embed/gFpNtZ2lPM8?si=R3DgcZEtsShirW4n)


---


<!-- source: tr/_includes/button-git.md -->
<a href="https://github.com/yandex-games-plugins/construct3">
  <span class="button">Depo</span>
</a>
<!-- endsource: tr/_includes/button-git.md -->
