- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Management;
using System.Management.Instrumentation;
using System.Runtime.InteropServices;
using System.Net;
using System.IO;
using System.Text.RegularExpressions;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
HttpWebRequest prreq = (HttpWebRequest)HttpWebRequest.Create("http://hideme.ru/proxy-list");
HttpWebResponse prresp = (HttpWebResponse)prreq.GetResponse();
StreamReader rprox = new StreamReader(prresp.GetResponseStream());
int proxint = Convert.ToInt32(rprox);
string sprox = proxint.ToString();
string allproxy = "";
var proxy = Regex.Matches(sprox, @"\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}:\d{1,5}");
foreach (Match p in proxy)
{
allproxy += p.Value + Environment.NewLine;
}
}
private void Form1_Load(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
Form1 fm4 = new Form1();
if (fm4.ShowDialog() == DialogResult.OK) { }
}
}
}
guest 25.07.2014 00:51 # +2
што это?
kegdan 25.07.2014 01:22 # +1
>>Form1
видали
>>Environment.NewLine
Претензии на кроссплатформеность?
someone 25.07.2014 08:33 # +1
Импортируем многопоточность, но на сайт заходим синхронно в потоке гуя? М-да.
bormand 25.07.2014 09:30 # +1
bormand 25.07.2014 10:31 # +2
P.S. А на ведре за такое выбрасывают исключение ;)
kegdan 25.07.2014 10:57 # +1
Lure Of Chaos 25.07.2014 17:00 # 0
kegdan 25.07.2014 17:01 # −1
1024-- 25.07.2014 21:07 # +1
А теперь минусуйте за пошлость.
kegdan 25.07.2014 21:10 # −1
1024-- 25.07.2014 21:13 # 0
kegdan 25.07.2014 21:14 # 0
TauSigma 28.07.2014 09:22 # 0
Винт с подходящей резьбой всегда найдётся:
System.Windows.Forms.Control.CheckForIll egalCrossThreadCalls
System.Web.UI.Page.VerifyRenderingInServ erForm(...)
А вообще, разработчикам ядра, за такие перлы уши надо отрывать.
За такую "заботу" на низком уровне о клиенте... Хоть от препрцессора-бы зависимость сделали...
bormand 28.07.2014 09:45 # 0
kegdan 28.07.2014 09:52 # 0
TauSigma 28.07.2014 11:37 # 0
Или так:
Так что индусы как раз и писали эти проверки.
bormand 28.07.2014 12:43 # 0
Эээ... это xamarin? На жабе через AsyncTask вроде бы неплохо смотрелись асинхронные запросы.
> Так что индусы как раз и писали эти проверки.
Ну а как еще поступить? Если в ui треде случится синхронный блокирующий read или поиск dns - морда тупо повиснет, что очень неприятно для юзера. Как еще заставить программистов индусов делать запросы в бекграунде, кроме как давать по рукам за запрос в ui треде?
TauSigma 28.07.2014 13:32 # 0
Это - старый, добрый WinForms.
http://msdn.microsoft.com/en-us/library/0xb61xs7%28v=vs.110%29.aspx
>Ну а как еще поступить?
1) Поставить Cursor.Current=WaitCursor (Забыл уже как там оно правильно называется)
2) Прокачать насос сообщений (Надмозг - перевод MessagePump [Очередь сообщений]).
>Как еще заставить программистов индусов делать запросы в бекграунде, кроме как давать по рукам за запрос в ui треде?
А это уже дело индусов как они инструмент используют.
Код дающий по рукам, мог написать только индус со стажем.
bormand 28.07.2014 13:46 # +1
Эм, а я то о андроиде :) Я с винформс вообще не работал, и х.з. как там что сделано... Поэтому мне сложно судить, правильно ли поступил M$.
> А это уже дело индусов как они инструмент используют.
Ну вот гуглу надоело, что их ругают за косяки индусов "андроид говно, у него морда в половине приложений вечно виснет", "а вот на иосе проги не лагают, когда лезут в сеть" и т.п. Советы и просьбы не помогали. Вот они где-то в районе андроида 3.0 и приняли такое решение: "или лезьте к своим сраным серверам через сраный GPRS в фоне или идите нахуй с нашей платформы".
> прокачать насос сообщений
Во время блокирующего чтения сокета? Удачи.
bormand 28.07.2014 13:53 # 0
Было:
- индус запускает код
- на его wifi все работает нормально
- индус продает код
- юзеры с GPRS'ом жалуются на прогу, да и на саму ось до кучи (с точки зрения юзера: тупят многие проги = тупит ось)
- у гугла пригорает
Стало:
- индус запускает код
- ось дает по рукам на первом же запуске проги
- индус бежит читать доку
- индус исправляет код как положено
- ???
- профит
Что плохого то?
kegdan 28.07.2014 14:14 # 0
В этот момент индусу может стать плохо
TauSigma 28.07.2014 15:27 # 0
Хомячки... На маздайке тоже жаловались, пока M$ не сделал обязательную сертификацию дров.
При том, что проверяли они только на ревью. Без рантаймовского KeBugCheck.
>- ось дает по рукам на первом же запуске проги
>Что плохого то?
Лучше это делать во время ревью кода, а не средствами оси. Иначе получилось, что в ведройде > 3.0, часть программ начала тупо сыпаться, за что гуголь наверня отхватил кучу лулзов.
...Ну и лучи поноса с обоих сторон...
kegdan 25.07.2014 10:59 # +2
Нахуй не нужны. Но видимо с нимы оно работает быстрее
TauSigma 25.07.2014 12:35 # 0
После этого и накопился слой перхоти, который при компиляции в IL будет по любому ликвидирован.
В студии, через "Command Window", вся лишняя перхоть чистится через "Edit.RemoveAndSort"
kegdan 25.07.2014 13:20 # 0
roman-kashitsyn 28.07.2014 11:15 # +3
Как будто это что-то хорошее
"SQL, Lisp, and Haskell are the only programming languages that I've seen where one spends more time thinking than typing."
--- Philip Greenspun
kegdan 28.07.2014 11:34 # 0
3.14159265 28.07.2014 13:17 # +2
guest 08.08.2014 15:24 # 0