2ちゃんねる ■掲示板に戻る■ 全部 1- 最新50    

【まず1嫁】くだすれPython(超初心者用) その59

1 :デフォルトの名無しさん:2023/07/13(木) 18:48:41.56 ID:INS7SIu4.net
当スレに★Python以外のプログラミング言語での回答類を書くべからず★
派生言語はそれぞれ専スレがある(この板にあるとは限らない)ので、そっち池。
「Ruby」「Rails」「某言語では」「クソチョンw」をNGワード登録推奨。荒らしは、完全スルー放置が一番きらいです。

このスレッドは「お勉強」スレのほうには書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を、勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますので、お礼は Python の布教と初心者の救済をお願いします。

★エラーを解決したい場合★は、
  表示されたエラーの全文(勝手に省略やスクショうp等の横着クソ行為禁止)と、
  実行環境(Pythonのバージョン・OSとIDEの種類およびバージョン)をシッカリ書くこと。

Pythonの★ソースコードをそのまま5ちゃんに貼るとインデントが崩れてチヌ★
【【【複数の連続半角スペースはなにもなかったことにされる&タブは普通には入れられない】】】掲示板の仕様なので、
プログラム文は↓等の、いわゆるコードうp用サイトに貼ってこいください。
ttps://techiedelight.com/compiler/  Run Code機能あり。
ttp://ideone.com/      デフォ設定はC用のため、言語選択ボタン押下がピコ手間かも。
ttp://codepad.org/      ほぼ直感的に使える。Run codeボタンあり。
ttp://pastebin.com/     まずまずシンプル。
ttp://dpaste.com/      とてもシンプル。消えるまでの日数は十分長ーく指定のこと。

◇Python公式◇ http://www.python.org/
◇まとめwiki◇ ttp://python.rdy.jp/wiki.cgi

〇前スレ〇
【まず1嫁】くだすれPython(超初心者用) その58
https://mevius.5ch.net/test/read.cgi/tech/1662514433/

次スレたては >>985 あたりが挑戦する。
### END OF TEMPLATE ###

806 :デフォルトの名無しさん:2024/06/28(金) 17:39:52.27 ID:bVzHKq+e.net
インターネットからのパッケージの入手ができないクローズドな環境で
Pythonを使ってます

Portable運用ができるのでWinPythonを使っているのですが、
同梱されているものがバージョンにより異なり、
PandasやKerasが入っていたりいなかったりするのがちょっと困ってます

自分が必要なものを導入した状態でポータブル化したPython環境、
みたいなものを作る方法はありますでしょうか

807 :デフォルトの名無しさん:2024/06/28(金) 17:44:05.75 ID:sa0QpqCC.net
>>805
ちゃうよ
ゴルーチンみたいな奴
ちゃんとスレッドは使う

808 :デフォルトの名無しさん:2024/06/28(金) 18:21:18.71 ID:IKZAS17P.net
>>807
それはグリーンスレッドのスケジューラー/エグゼキューターが
内部でOSスレッドのスレッドプールを使ってるという話でしょ
asyncのTaskをOSのスレッドのスレッドプールで回すのと仕組み的は同じでは?

スケジューリング方法の違いやスタックの有無だったり
スケジューラー/エグゼキューターが言語にビルトインされてて
アプリケーションコードで意識しなくてもいいとか
ゴルーチンとの違いはいろいろあるけど
それはマイクロスレッドの定義とは関係ないんじゃない?

809 :デフォルトの名無しさん:2024/06/28(金) 18:33:47.84 ID:sa0QpqCC.net
>>808
asyncのTaskは数千、数万も作れないでしょ
ゴルーチンすなわちマイクロスレッドはそれぐらい作れる設計

810 :デフォルトの名無しさん:2024/06/28(金) 18:50:13.66 ID:IKZAS17P.net
>>809
>asyncのTaskは数千、数万も作れないでしょ
インタープリターだから生成が遅いというだけで
その数は余裕でしょ

811 :デフォルトの名無しさん:2024/06/28(金) 20:02:09.92 ID:TzaR5aOj.net
>806
ありますよ

812 :デフォルトの名無しさん:2024/06/28(金) 21:12:32.85 ID:sa0QpqCC.net
>>810
asyncはあくまでIOが並列化できるだけ
計算の実態を数万作れるのはゴルーチンだけ
よって本質が全く違う

813 :デフォルトの名無しさん:2024/06/28(金) 21:42:27.28 ID:69xrfFOO.net
>>812が間違っていて理解も不足している
各言語のasyncタスクは数万タスク動かせる
Pythonでは試していないがおそらく動くのだろう

814 :デフォルトの名無しさん:2024/06/28(金) 22:10:06.47 ID:sa0QpqCC.net
>>813
だから動かないって
ゴルーチンは「計算の主体」(って意味わかる?)
を数百万個作れる
これはユーザースペースでコンテキストスイッチをしてるため
おまけにスタックサイズも動的な上に小さい
全てマシンコードレベルで行われる
当然ロックなど存在しない
これがマイクロスレッド

815 :デフォルトの名無しさん:2024/06/28(金) 22:15:33.56 ID:69xrfFOO.net
>>814
君は非同期タスクについて何も知らない無知者だとわかった
まずは勉強して知識をつけなさい
もう君の相手をすることはない

816 :デフォルトの名無しさん:2024/06/28(金) 22:21:09.52 ID:sa0QpqCC.net
>>815
御託はいいから動かしてみてね
思い処理を数万個でいいから
Goだと並列でちゃんと動くよ

817 :デフォルトの名無しさん:2024/06/28(金) 22:35:05.70 ID:b9qgRVqH.net
asyncのtaskはどの言語でもJavaScriptからRustに至るまで数万個並行で動作するよ
そのために各言語に導入されたんだよ

818 :デフォルトの名無しさん:2024/06/29(土) 03:17:28.84 ID:4AUQ0CVf.net
Elixir は、10万もの小プロセスを起動できる。
メモリが大きいと、5千万小プロセスも。
ただし、小プロセスは、OS のプロセスとは異なるものです

スクエニは、Elixirを使っているらしい

Go の並行処理も、mattn の本に書いてあるけど、
C で、OS の100スレッドを起動したら、
CPU 使用率が高く、12秒も掛かったが、

Goで100 goroutine を起動したら、
6スレッドしか起動せず、9秒で済んだ

Goの方が、CPUコアを効率的に使える

とにかく、スレッドを起動したらダメ!
CPUコアや時間の大半が、スレッドの起動処理に使われるから

819 :デフォルトの名無しさん:2024/06/29(土) 08:36:40.26 ID:9/qe2SG9.net
知ったかぶりして間違ったこと書く
やんわり間違いを指摘される
反省せずに開き直る!

またこの流れ
ググればすぐわかるような間違いなのになんなんだろうな

820 :デフォルトの名無しさん:2024/06/29(土) 09:05:37.50 ID:C+0SrrrI.net
ElixrはCPU使う処理は得意ではないよ
処理は一瞬で終わるが大量の処理を必要とするようなものが得意
それこそpush通知とかね
Goのようにマシンコードレベルでコンテキストスイッチを実装してるわけではないから
重い処理を書くと途端に負荷が上がる

821 :デフォルトの名無しさん:2024/06/30(日) 11:06:44.92 ID:L3wyoKVN.net
Erlang最強

822 :デフォルトの名無しさん:2024/07/01(月) 05:47:45.32 ID:ppYg1fh2.net
AIならね

230 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
名前: E-mail (省略可) :

read.cgi ver.24052200